3 回答
时光作祟不予歌
TA贡献1条经验 获得超0个赞
我的这样行不行?
num = int(input("请输入一个三位数:"))
# 分别求出三位数的个位,十位,百位
gw = int(str(num)[2])
sw = int(str(num)[1])
bw = int(str(num)[0])
# 定义变量total,保存各位数字立方和
total = gw ** 3 + sw ** 3 + bw ** 3
print(total)
# 用if语句判断条件是否成立,并做出相应的输出
# 补全代码
if total == num:
print("是水仙花数")
else:
print('不是水仙花数')
cyanist
TA贡献1条经验 获得超0个赞
public class Shuixian{
public static void main(String[] args) {
int x = 0; //定义水仙花数个数
for(int i=100;i<=999;i++){
int b = i/100; //取得百位数
int s = (i-100*b)/10; //取得十位数
int g = (i-s*10-b*100); //取得个位数
if(i==g*g*g+s*s*s+b*b*b){
x++;
System.out.print(i);
System.out.println(" "); //换行
}
}
System.out.println("水仙花数共有"+x+"个"); //输出水仙花数的总数
}
}
运行结果:
153
370
371
407
水仙花数共有4个
qq___524
TA贡献171条经验 获得超74个赞
public class problem{
public static boolean fun(int x){//判断是不是水仙花数
int a, b, c;
a = x/100;//百位
b = (x/10)%10;//十位
c = x%10;//个位
a = a*a*a;
b = b*b*b;
c = c*c*c;
return (a+b+c == x);
}
public static void main(String[] args){
int i;
for (i = 100; i < 1000; i++){//遍历所有的三位数
if (fun(i)){
System.out.println(i);
}
}
}
}身边设备有限,我没有编译,应该没太大问题
添加回答
举报
0/150
提交
取消
