【基础入门题001】7的倍数或包含7的正整数

简介: 【基础入门题001】7的倍数或包含7的正整数

259ca83d26bf27fb3af31a60162243f0.png


【基础入门题】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个

目录
相关文章
|
8月前
|
Python
一个大于1的自然数,除了1和它本身外,不能被
一个大于1的自然数,除了1和它本身外,不能被
|
搜索推荐 算法 Android开发
【Android面试】有1000个数,1000个数的大小范围是0-999,有两个相同的数字,请设计算法找出来
思路如下: 1000个数字只有两个相同的数字,那就是说把数组排序后,这两个数一定相邻。通过排序算法进行排序,在循环判断相邻的数即可。
315 0
Python-剑指offer(10,11,12)矩形覆盖,二进制中1的个数,数值的整数次方
Python-剑指offer(10,11,12)矩形覆盖,二进制中1的个数,数值的整数次方
|
Python
【基础入门题047】随机整数列表
【基础入门题047】随机整数列表
58 0
|
Python
【基础入门题013】求连续根号的值
【基础入门题013】求连续根号的值
95 0
|
Python
【基础入门题033】统计字符数
【基础入门题033】统计字符数
95 0
判断一个数是否为4的整数次幂(2的升级版--双份快乐)
判断一个数是否为4的整数次幂(2的升级版--双份快乐)
leetcode 1356 根据数字二进制下1的数目排序
leetcode 1356 根据数字二进制下1的数目排序
73 0
leetcode 1356 根据数字二进制下1的数目排序
LeetCode 1356. 根据数字二进制下 1 的数目排序
给你一个整数数组 arr 。请你将数组中的元素按照其二进制表示中数字 1 的数目升序排序。
83 0
|
Java 测试技术
Java数字分类给定一系列正整数,请按要求对数字进行分类,并输出以下5个数字:A1 = 能被5整除的数字中所有偶数的和;A2 = 将被5除后余1的数字按给出顺序进行交错求和,即计算n1-n2+n3
Java数字分类给定一系列正整数,请按要求对数字进行分类,并输出以下5个数字:A1 = 能被5整除的数字中所有偶数的和;A2 = 将被5除后余1的数字按给出顺序进行交错求和,即计算n1-n2+n3
223 0
Java数字分类给定一系列正整数,请按要求对数字进行分类,并输出以下5个数字:A1 = 能被5整除的数字中所有偶数的和;A2 = 将被5除后余1的数字按给出顺序进行交错求和,即计算n1-n2+n3