輸入乙個整數n,求從1到n這n個正數中,1出現的次數。例如:輸入12,出現一的數字有1,10,11,12共有5個1,則輸出5.
最簡單的方法,我們可以遍歷從1到n的每乙個數字k,對於k我們計算出它其中包含的1的個數,方法其實很簡單,只需要分別判斷個位,十位,百位,千位等的每一位是否為1,然後用計數器記錄。
對10求餘判斷是否等於一這樣為了判斷最高位是否為1
n/10是為了每次得到除了最高位的後面數字。
#coding:utf-8
defcompute
(n):
total_1 = 0
for i in range(1,n+1):
#計算數字n每一位的1,
while i:
if i % 10 ==1:
total_1 += 1
i = i/10
return total_1
if __name__ == '__main__':
print('12 has %i 1'%compute(12))
計算從1到N中1的出現次數
給定乙個十進位制整數n,求出從1到n的所有整數中出現 1 的個數。例如 n 2,1,2出現了1個 1 n 12,1,2,3,4,5,6,7,8,9,10,11,12。出現了5個 1 最直接的方法就是從1開始遍歷到n,將其中每乙個數中含有 1 的個數加起來,就得到了問題的解。01publiclongc...
在從1到n的正數中1出現的次數
題目 輸入乙個整數n,求從1到n這n個整數的十進位制表示中1出現的次數。例如輸入12,從1到12這些整數中包含1 的數字有1,10,11和12,1一共出現了5次。我的思路是計算每一位上1會出現在哪些數字中。建乙個陣列a n 放置每一位,從個位到最高位,0 n,這裡n 4。a 0 5,a 1 0,a ...
在從1到n的正數中1出現的次數
int count1in1ton int n return n int countnumber1 int n return count 程式設計之美上的方法 大體的思路是這樣的 假設n abcde,這裡a,b,c,d,e分別是十進位制數n的各個位數上的數字。如 果要計算百位上出現1的次數,它會受到三...