您的位置 首页 百科问答

java水仙花数

问题补充说明:这是我自己写的,想用for循环来完成,那位大侠帮忙看看那里出错了?public class ShxhNum{ public static void main(String[] args) { int a,b,c,d,i=0; System.out.println("你要找的水仙花数为: "); for(a=100;a<1000;a++) { b=a/100; c=(a/10)%10; d=a%100; if(a==b*b*b+c*c*c+d*d*d) ++i; System.out.println(a); } System.out.println("你找的水仙花个数为:"+i); }}

java水仙花数

错误出在d这个变量上面,我知道你这里的d是为了得到这个数的个位数360问答,但是你只是对100进行验掌歌士了模操作,那么这个结果就可能是两位数,明显和你的初衷不符,你应该在对100进行模操作的基础上再对10做模操作,改成:

publicclassShxhNum{

publicstaticvoidmain(String[]args){

inta,b,c,d,i=0;

System.out.println("你要找的水仙花数为:");

for(a=100;a<1000;a++){

b=a/100;

c=(a/10)%10;

d=a%100%10;

if(a==b*b*b+c*c*c+d*d*d){

System.out空上层日阳消免.println(a);

i++;

}

}

System.out.println("你找的水仙花个数为:"+i);

}

}

上一篇 中国一来自共有多少个市(地级市)多360问答少个县?
下一篇 12306停运最新消息
扫一扫,手机访问

扫一扫,手机浏览