1、问题描述:
一本书的页码从自然数1开始顺序编码直到自然数n。书的页码按照通常的习惯编排,每个页码都不含多余的前导数字0。数字计数问题要求对给定书的总页码n(<=200000),计算出书的全部页码中分别用到多少次数字0,1,2,…,9。
2、输入格式
在文件中input.txt输入一个正整数n。
3、输出格式
输出到out.txt文件中。
4、代码
def main():
f = open('002_input.txt','r')
n = int(f.read())
print("已读取到页码是{}".format(n))
f.close()
# n = int(input("请输入页码"))
list = [0]*10
for i in range(1,n+1):
while i:
a = (i%10)
list[a] += 1
i = int(i/10)
f = open('002_out.txt', 'w')
f.write("页码总数是{}\n \n0出现{}次,\n1出现{}次,\n2出现{}次,\n3出现{}次,\n4出现{}次,\n5出现{}次,\n6出现{}次,\n7出现{}次,\n8出现{}次,\n9出现{}次".format(n,list[0],list[1],list[2],list[3],list[4],list[5],list[6],list[7],list[8],list[9]))
print("写入完毕")
f.close()
if __name__ == '__main__':
main()
5、结果展示
(1)输入
(2)输出
查看来源:https://bbs.csdn.net/topics/608761781