初學python,記錄學習路徑
水仙花數指的是其各位數字的3次方和等於該數本身。
三位數的水仙花數
s = ""
for i in range(100, 1000):
t = str(i)#字串就相當於乙個小型的字典型別,位置是建,內容是值
if pow(eval(t[0]),3) + pow(eval(t[1]),3) + pow(eval(t[2]),3) == i :
s += "{},".format(i)#這裡的逗號指的是數字之間的分割符
print(s[:-1])#這裡採用了s[:-1]方式不輸出最後乙個逗號。也可以把所有結果放到乙個列表中,採用字串的.join()方法輸出結果。
然後我試圖用.join()函式去寫這段**
第一次:
s = ""
for i in range(100, 1000):
t = str(i)
if pow(eval(t[0]),3) + pow(eval(t[1]),3) + pow(eval(t[2]),3) == i :
s += "{},".format(i)
print(",".join(s))
然後發現結果是
1,5,3,3,7,0,3,7,1,4,0,7
仔細一想原來是s在被合併後沒有了間隔
於是為了人為的創造間隔,我選用了列表
第二次:
s=#creat a new list
for i in range(100, 1000):
t = str(i)#字串就相當於乙個小型的字典型別,位置是建,內容是值
if pow(eval(t[0]),3) + pow(eval(t[1]),3) + pow(eval(t[2]),3) == i :
print(','.join(str(i) for i in d))
效果還行
我這裡用的是嵩天老師的方法,輸入的是三位數,那麼可不可以直接輸入abc計算呢,我覺得應該也是可以的,讀者可以自行編寫。
部分原創
第乙個**見
C語言解決水仙花問題 三位數
首先得需要乙個自然數變數a,且需要用到乙個for迴圈來實現100 999的區間,其次是水仙花數的定義 它的每一位上的數的立方和加起來等於本身 我們很容易想到,要 int三個變數,分別是百位數 十位數 個位數,三個數字出來之後我們得拿乙個數把他們加起來,此時又要int乙個變數 shui然後就可以寫程式...
python使用迴圈列印所有三位數水仙花數的例項
首先水仙花數是什麼?水仙花數 narcissistic number 也被稱為超完全數字不變數 pluperfect digital invariant,ppdi 自戀數 自冪數 阿姆斯壯數或阿姆斯特朗數 armstrong number 水仙花數是指乙個 3 位數,它的每個位上的數字的 3次冪之和...
判斷乙個三位數是不是水仙花數
檔名稱 判斷乙個三位數是不是水仙花數 完成日期 2013年 11 月5日 版本號 v1.0 對任務及求解方法的描述部分 判斷乙個三位數是不是水仙花數 我的程式 include using namespace std int main int a,b,c,sum1,sum2 cout a b c su...