
用Java编写这道题,并叙述一下分析思路,谢谢啦我是个Java初学者麻烦了!
编写一控制台程序:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次...
编写一控制台程序:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。
展开
1个回答
展开全部
假设百位是 a,十位是 b,个位是 c。因为题目要求说是三位数,那么 a 的取值是 1 到 9,其它 b 和 c 的取值是 0 到 9。现在根据题目条件写个等式:a^3 + b^3 + c^3 = a*100 + b*10 +c。然后分别写三个循环,用这个等式来分别测试循环中的 a,b,c 的值是否成立,从而得出结果。下面是代码样例:
public class DemoTest {
public static void main(String[] args){
int a, b, c;
for(a = 1; a <=9; a++){
for(b = 0; b <=9; b++){
for(c = 0; c <=9; c++){
if(a*a*a + b*b*b + c*c*c == a*100 + b*10 + c){
System.out.println("水仙花数为:"+ (a*100 + b*10 + c));
}
}
}
}
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询