【基础入门题】2021.10.28
求100以内的正整数是7的倍数或包含7的数字并统计总个数。
编程语言:包括但不限于Python
题目来源:派森特给站每日刷题频道
方法一:
def Seven(n): count,numbers = 0,[] for i in range(1,n+1): if i%7==0 or '7' in str(i): count += 1 numbers.append(i) return count,numbers Count,Numbers = Seven(100) print(f'在1~100之间满足要求的有{Count}个,分别是:') for i,n in enumerate(Numbers): print(n,end=('\t' if (i+1)%6 else '\n'))
执行结果:
在1~100之间满足要求的有30个,分别是:
7 14 17 21 27 28
35 37 42 47 49 56
57 63 67 70 71 72
73 74 75 76 77 78
79 84 87 91 97 98
方法二:使用lambda表达式
1. Count7 = lambda n:[i for i in range(1,n+1) if i%7==0 or '7' in str(i)] 2. 3. print((n:=Count7(100)),f',共{len(n)}个')
执行结果:
[7, 14, 17, 21, 27, 28, 35, 37, 42, 47, 49, 56, 57, 63, 67, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 84, 87, 91, 97, 98] ,共30个