水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身
比如:153=1*1*1+5*5*5+3*3*3
370=3*3*3+7*7*7+0*0*0
371=3*3*3+7*7*7+1*1*1
407=4*4*4+0*0*0+7*7*7
一、判断一个三位数它是不是水仙花数:
解决方法就是当输入一个三位整数的时候,第一步把它int了,第二步分三步把百位、十位、个位三个数单独拎出来,第三步进行一个if语句,判断式子的结果是否等于最初输入的那个三位整数。
1 //A为最初输入的三位整数 2 int B=A.nextint(); 3 int C=B/100;//这里利用int是取整数的特质,取到了最初三位数的百位给C 4 int D=(A-C*100)/10;//这里是用最初三位数减去最初三位数的百位数(整百),得到的就是这个三位数的后两位,运用同样int的特质,取到最初三位数的十位给D 5 int E=B-C*100-D*10;//剩个个位,减减就出来了 6 if(B==C*C*C+D*D*D+E*E*E){ 7 System.out.println("是水仙花数")} 8 else{ 9 System.out.println("不是水仙花数喽")}
二、打印出100到999中所有水仙花数:
将一作为一个方法,这里用for挨个往那个方法里代数,再用if语句判断出来。
respect!