我的程序中有以下代码:(出于调试目的,我包含了cout语句)
cout << "b: " << b << "\na: " << a;
constant[0] = (-b / (2 * a));
cout << "\nconstant: " << constant[0] << endl;
我得到的输出是:
b: -4
a: 3
constant: 0
而我正在尝试使constant [0]等于-(-4)/(2 * 3)或0.6666 ...
我放在那里的公式在做什么?
最佳答案
毫无疑问,您将a
和b
定义为整数,从而使整个公式以整数数学形式完成。将它们定义为浮点数或执行以下操作:
constant[0] = (-b / (2.0 * a));
这会强制在浮点数中进行数学运算。
关于c++ - 如何解决此公式错误?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2316470/