此代码显示1的无限循环,但我不希望它!下面的代码有什么问题?
#include<iostream>
using namespace std;
int main()
{
int i,num1=0,num2=0,num3=0; // declares four variables
for(i=100;i<=500;i++){ // for loop initiated from 100
int j=i; // since value of i gets changed afterwards hence store its current value in a variable
num1=i%10;
i=i/10;
num2=i%10;
num3=j/100;
if(num1*num1*num1 + num2*num2*num2 + num3*num3*num3 == j)
cout<<j<<endl;
// displays the number for above condition matched
}
return 0;
}
答案 0 :(得分:5)
你划分&#34;我&#34;每次循环,所以它永远不会超过500。
答案 1 :(得分:0)
删除i = i / 10
,因为它使循环无限......
i = 100
然后i = 10
在最后
i++
;i = 11
i = 11
然后i = 1.1
在最后
i++
;i = 2.1
i = 2.1
然后i = 0.21
在最后
i++
;i = 1.21
i = 1.21
然后i = 0.121
在最后依旧......