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
提交
取消
