我的程序中有以下代码:(出于调试目的,我包含了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 ...
我放在那里的公式在做什么?

最佳答案

毫无疑问,您将ab定义为整数,从而使整个公式以整数数学形式完成。将它们定义为浮点数或执行以下操作:

constant[0] = (-b / (2.0 * a));


这会强制在浮点数中进行数学运算。

关于c++ - 如何解决此公式错误?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2316470/

10-12 17:16