儿子上奥数课,有个页码问题,编了两个函数来解决。
根据书的页码求组成页码的数字的个数
def count_pages(pages):
i=0
total = 0
while i < pages:
total += len(str(i+1))
i += 1
return total
根据书的页码求组成页码的数字的和
def sum_pages(pages):
total = 0
i = 0
while i < pages:
sum_i = 0
for n in str(i+1):
sum_i += int(n)
total += sum_i
i += 1
return total
将代码文件存为“pagination.py".
下面 :read !python3 ../pythonCode/pagination.py 999
的输出:
Fri Jan 9 16:45:22 2015
Your input is: 999
如果输入的是书的页数,那么:
组成页码的数字共有: 2889
页码的数字和是: 13500
如果输入的是书的页码数字个数,则书的页数是: 369
输入是书的页码数字和,则没有吻合的书的页数,最接近的页数是: 369