习题解析之:各位数字之和为5的数
【问题描述】
输入一个1000以内的正整数 n,在同一行内输出 [0,n] 之间各位数字之和为5的数,数字之间用空格分开(行末有一个空格)。
输入格式
输入一个1000以内的正整数 n
输出格式
在一行内依次输出所有符合条件的数,数字之间用空格分开(行末有一个空格)
示例
输入:
100
输出:
5 14 23 32 41 50
【编程思路】
对于一个正整数 x ,用函数 str(x) 可以将 x 转换为字符串,在用循环 for c in str(x): 可以遍历整数 x 中的各位数字,用sum() 函数可以计算其各位数字之和。
语句为: sum(int(c) for c in str(i))
用循环 for i in range(0, n + 1) 遍历[0,n] 之间的整数,若某个整数的各位数字之和为5,则输出该整数。
编写的源程序如下:

浙公网安备 33010602011771号