Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何打印满足方程式的所有整数? 我需要编写一个C++程序,它打印出满足方程的所有50到0的数字:18 ^ 3×18X ^ 2+6=0<P>P。_C++ - Fatal编程技术网

如何打印满足方程式的所有整数? 我需要编写一个C++程序,它打印出满足方程的所有50到0的数字:18 ^ 3×18X ^ 2+6=0<P>P。

如何打印满足方程式的所有整数? 我需要编写一个C++程序,它打印出满足方程的所有50到0的数字:18 ^ 3×18X ^ 2+6=0<P>P。,c++,C++,我的if语句似乎没有返回任何结果,它应该: 我想我的思路是对的 for (int x = -50; x < 0; x++) { int y = pow(x, 3) - 18 * pow(x,3) + 6; if(y == 0) cout << y << endl; } 任何帮助都将不胜感激。三个错误: 如果要包含0,请使用x 它简化为:3*x+1*x-1*x=-1。除以-1的整数是1和-1,因此方程没有整数解。变量y应该使用双精度类

我的if语句似乎没有返回任何结果,它应该:

我想我的思路是对的

for (int x = -50; x < 0; x++) {
    int y = pow(x, 3) - 18 * pow(x,3) + 6;
    if(y == 0)
        cout << y << endl;
}
任何帮助都将不胜感激。

三个错误:

如果要包含0,请使用x
它简化为:3*x+1*x-1*x=-1。除以-1的整数是1和-1,因此方程没有整数解。

变量y应该使用双精度类型,因为方程没有整数根。但是,不要检查等于零的双变量。这可能

您的等式与代码中的等式不同:

我想应该是这样

for (int x = -50; x < 0; x++) {
   int y = pow(x, 3) - 18 * pow(x,2) + 6;
   if(y == 0)
       cout << y << endl; 
}


还要检查提供的公式是否正确

通过调试器运行它。它应该返回什么结果?此外,表达式有18x^2,但代码有18*powx,3-不一样。在代码中有y=x³-18x³+6=-17x³+6。这个多项式的根是6/17的第三个根,其中没有一个是整数。当然整数类型是表示整数的更好选择?要计算结果,您需要双精度,因为方程没有整数根。之后,如果需要显式转换,则可以将结果转换为整数。等式没有整数根这一事实意味着不存在y==0的整数值x。也就是说,你也需要让x加倍。然后下一个问题是x++和x=x+1.0都不能找到该根。@MSalters是的,你是对的。我忽略了这一点。
for (int x = -50; x < 0; x++) {
   int y = pow(x, 3) - 18 * pow(x,2) + 6;
   if(y == 0)
       cout << y << endl;