?
本文檔使用 PHP中文網手冊 發(fā)布
如果一個n位正整數等于其各位數字的n次方之和,則稱該數為阿姆斯特朗數。 例如1^3 + 5^3 + 3^3 = 153
以下代碼用于檢測用戶輸入的數字是否為阿姆斯特朗數:
# -*- coding: UTF-8 -*- # Filename :test.py # author by : www.shouce.ren # Python 檢測用戶輸入的數字是否為阿姆斯特朗數 # 獲取用戶輸入的數字 num = int(input("請輸入一個數字: ")) # 初始化變量 sum sum = 0 # 檢測 temp = num while temp > 0: digit = temp % 10 sum += digit ** 3 temp //= 10 # 輸出結果 if num == sum: print(num,"是阿姆斯特朗數") else: print(num,"不是阿姆斯特朗數")
執(zhí)行以上代碼輸出結果為:
# python3 test.py 請輸入一個數字: 345 345 不是阿姆斯特朗數
python3 test.py 請輸入一個數字: 153 153 是阿姆斯特朗數
# -*- coding: UTF-8 -*- # Filename :test.py # author by : www.shouce.ren # 獲取用戶輸入數字 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í)行以上代碼輸出結果為:
最小值: 1 最大值: 1000 1 153 370 371 407
以上實例中我們輸出了 1 到 1000 之間的阿姆斯特朗數。