希望大家帮助
//刚才看到一道题//自己写了代码结果和答案不一样//希望大家帮我看下麻烦了//题目是这样的: 个位数为6且能被3整除的五位数共有多少?//我写的#include <iostream>using namespace std;int main(){ int result = 0, one = 0; for (long i = 10000; i != 99999; i++) { one = i % 10;//先求这个数的个位数 if ( (one == 6) && (one % 3) == 0)//判断满足条件的 { result++; } } cout << result << endl; return 0;}//================================================/*别人给出的答案根据题意可知,满足条件的五位数的选择范围是10006、10016。。。99996。可设基础数i=1000,通过计算i*10+6即可得到欲选的数(i的变化范围是1000~999),再判断该数能否被3整除。*/#include <iostream>using namespace std;int main(){ int result = 0; for (long i = 1000; i != 9999; i++) { if ( (i * 10 + 6) % 3 == 0) { result++; } } cout << result << endl; return 0;}
#include <iostream>using namespace std;int main(){ int result = 0, one = 0; for (long i = 10000; i != 99999; i++) { one = i % 10;//先求这个数的个位数 if ( (one == 6) && (one % 3) == 0)//判断满足条件的 // [color=#FF0000]这里应该是 i % 3吧[/color] { result++; } } cout << result << endl; return 0;}
[解决办法]
[code=C/C++][/code]
#include <iostream>
using namespace std;
int main()
{
int result = 0;
int a=0, b=0, c=0, d=0;
for (long i = 10000; i != 99999; i++)
{
a = i%10000; /*这样求出个位数8*/
b = (i-a*10000)%1000;
c = (i-a*10000-b*1000)%100;
d = (i-a*10000-b*1000-c*100)%10;
if ( (d == 6) && (i % 3) == 0)//判断满足条件的
{
cout<<i<<endl;
result++;
}
}
cout << result << endl;
return 0;
}
[code=C/C++][/code]
lz这样看看呢!
[解决办法]
int main()
{
int result,one;
result=0;
one=0;
for(long i=10000;i<=99999;i++)
{one=i%10;
if((one==6)&&(i%3)==0)
{
result++;
}
}
cout<<result<<endl;
return 0;
}结果是3000
但是我个人觉得还是下面的代码比较清晰
int main()
{
int result = 0;
for (long i = 1000; i != 9999; i++)
{
if ( (i * 10 + 6) % 3 == 0)
{
result++;
}
}
cout << result << endl;
return 0;
}