不能输出 ,帮看下,谢谢!!!
程序代码:
为什么这个程序没有输出 呀?,我就郁闷了,帮看下,谢谢了
package com.chinasoft.Shui;
public class ShuiXianHua {
/**
*打印出所有的“水仙花数”。所谓的“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。
*例如,153是一个“水仙花数”,因为153=(1的三次方+5的三次方+3的三次方)。
*/
public static void main(String[] args) {
for(double i=100;i<1000;i++)
{
double j=0,h=0,k=0,l=0;
j=i%100;
h=j%10;
k=i/100;
l=Math.pow(j,3)+(Math.pow(h,3))+(Math.pow(k, 3));
System.out.println(i);
if(i==l)
{
System.out.println("{0} 是一个水仙花数。"+i);
}
}
}
}
package com.chinasoft.Shui;
public class ShuiXianHua {
/**
*打印出所有的“水仙花数”。所谓的“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。
*例如,153是一个“水仙花数”,因为153=(1的三次方+5的三次方+3的三次方)。
*/
public static void main(String[] args) {
for(double i=100;i<1000;i++)
{
double j=0,h=0,k=0,l=0;
j=i%100;
h=j%10;
k=i/100;
l=Math.pow(j,3)+(Math.pow(h,3))+(Math.pow(k, 3));
System.out.println(i);
if(i==l)
{
System.out.println("{0} 是一个水仙花数。"+i);
}
}
}
}
----------------解决方案--------------------------------------------------------
for (int i = 100; i < 1000; i++) {
int a =(int) Math.pow(i/100, 3);
int b = (int) Math.pow(i%100/10, 3);
int c = (int) Math.pow(i%10, 3);
if(i==(a+b+c))
System.out.println(i);
}
}
----------------解决方案--------------------------------------------------------
谢谢版主,但是我的问题 是,我这个为什么不可以输出 呢???求解释啊?
----------------解决方案--------------------------------------------------------
算法问题。 比如 212%100 =12 这个不是个位数 所以结果当然不对
----------------解决方案--------------------------------------------------------
谢谢楼上了哈
----------------解决方案--------------------------------------------------------