亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

文字

Python 阿姆斯特朗數(shù)


如果一個n位正整數(shù)等于其各位數(shù)字的n次方之和,則稱該數(shù)為阿姆斯特朗數(shù)。 例如1^3 + 5^3 + 3^3 = 153

以下代碼用于檢測用戶輸入的數(shù)字是否為阿姆斯特朗數(shù):

# -*- coding: UTF-8 -*-

# Filename :test.py
# author by : www.shouce.ren

# Python 檢測用戶輸入的數(shù)字是否為阿姆斯特朗數(shù)

# 獲取用戶輸入的數(shù)字
num = int(input("請輸入一個數(shù)字: "))

# 初始化變量 sum
sum = 0

# 檢測
temp = num
while temp > 0:
   digit = temp % 10
   sum += digit ** 3
   temp //= 10

# 輸出結(jié)果
if num == sum:
   print(num,"是阿姆斯特朗數(shù)")
else:
   print(num,"不是阿姆斯特朗數(shù)")

執(zhí)行以上代碼輸出結(jié)果為:

# python3 test.py 
請輸入一個數(shù)字: 345
345 不是阿姆斯特朗數(shù)
python3 test.py 
請輸入一個數(shù)字: 153
153 是阿姆斯特朗數(shù)

獲取指定期間內(nèi)的阿姆斯特朗數(shù)

# -*- coding: UTF-8 -*-

# Filename :test.py
# author by : www.shouce.ren

# 獲取用戶輸入數(shù)字
lower = int(input("最小值: "))
upper = int(input("最大值: "))

for num in range(lower,upper + 1):
   # initialize sum
   sum = 0

   # 檢測
   temp = num
   while temp > 0:
       digit = temp % 10
       sum += digit ** 3
       temp //= 10

   if num == sum:
       print(num)

執(zhí)行以上代碼輸出結(jié)果為:

最小值: 1
最大值: 1000
1
153
370
371
407

以上實例中我們輸出了 1 到 1000 之間的阿姆斯特朗數(shù)。

上一篇: 下一篇: