标题: 水仙花数 怎么输出来没有结果 [打印本页] 作者: xiabingxiejiang 时间: 2013-8-5 23:43 标题: 水仙花数 怎么输出来没有结果 int a, b, c;
for (int i = 100; i <= 999; i++)
{
c = i / 100;
b = (i - c) / 10;
a = i - b - c;
if (i == a * a * a + b * b * b + c * c * c)
{
Console.WriteLine(i);
}
}
for (int i = 100; i <= 999; i++)
{
int a, b, c,d;//a是百位上的数,b是十位上的数,c是个位上的数
a = i / 100;
d = i / 10;
b = d%10;
c = i % 10;
if (i == a * a * a + b * b * b + c * c * c)
{
Console.WriteLine(i);
}
}
Console.ReadKey();
楼主的写的代码有问题,其中c是百位上的数,十位和个位上的数有问题 作者: xiabingxiejiang 时间: 2013-8-6 10:14
作者: 范国伟 时间: 2013-8-6 20:12
忘了算位值了,
b = (i - c*100) / 10;
a = i - b*10 - c*100;
你这样改一下就行了 作者: 啊拉拉的坑啊 时间: 2013-8-7 10:04
int a, b, c;//a为百位,b为十位,c为个位
for (int i = 100; i <= 999; i++)
{
a = i / 100;
b = (i % 100) / 10;
c = i % 10;
if (i == a * a * a + b * b * b + c * c * c)
{
Console.WriteLine(i);
} 作者: 高文咪 时间: 2013-8-7 11:48
int a, b, c;
for (int i = 100; i < 999; i++)
{
a = i / 100;//百位数;
b = (i-a*100)/10;//十位数;
c = i % 100;//个位数
if (i == a * a * a + b * b * b + c * c * c)
{
Console.WriteLine(i);
}
}
Console.ReadLine();
复制代码
作者: 庞海瑞 时间: 2013-8-7 11:54
//计算100到999的水仙花数:a*a*a+b*b*b+c*c*c=cba
// g 为个位,s为十位 b为百位
Console.WriteLine("输出100到999的水仙花数");
for (int i = 100; i <= 999;i++ )
{
int g = i % 10;
int s = i / 10 % 10;
int b = i / 100;
if (i == g * g* g + s * s * s + b * b * b)
{
Console.WriteLine(i);
}