Python練習題-TQC+(308)-迴圈位數加總

讓使用者輸入兩個數字
第一個數字是要執行的次數、
第二個數字每位數全部加總,例如使用者輸入1234
那麼就要1+2+3+4

308 迴圈位數加總

1. 題目說明:

請開啟PYD308.py檔案,依下列題意進行作答,將輸入值之每位數全部加總,使輸出值符合題意要求。作答完成請另存新檔為PYA308.py再進行評分。

 

2. 設計說明:

請使用迴圈敘述撰寫一程式,要求使用者輸入一個數字,此數字代表後面測試資料的數量。每一筆測試資料是一個正整數(由使用者輸入),將此正整數的每位數全部加總起來。

 

3. 輸入輸出:

輸入說明

先輸入一個正整數代表後面測試資料的數量

依測試資料的數量,再輸入正整數的測試資料

 

輸出說明

將測試資料的每位數全部加總

 

輸入輸出範例

輸入與輸出會交雜如下,輸出的部份以粗體字表示 1

1

98765

Sum of all digits of 98765 is 35

 

輸入與輸出會交雜如下,輸出的部份以粗體字表示 2

3

32412

Sum of all digits of 32412 is 12

0

Sum of all digits of 0 is 0

769

Sum of all digits of 769 is 22

參考程式碼:

n = eval(input())
for i in range(n):
    num = eval(input()) #假設 num = 98765
    tmp = num #98765
    ans = 0 # 0
    while tmp!=0: 
        ans+=(tmp%10)#第一圈餘數  ans= 0+98765的餘數=5
        #print("ans=",ans)#第一圈5  /  第二圈5+6=11  / 第三圈 11+7=18 第四圈18+8=26 第五圈26+9=35
        tmp=tmp//10 #除法結果再進行取整數,也就是取不超過除法結果的最大整數
        #print("tmp=",tmp)#第一圈9876  /  第二圈987  / 第三圈 98 第四圈9 第五圈 0
    print('Sum of all digits of',num,'is',ans)

看看效果

 

Yiru@Studio - 關於我 - 意如