python算法一:枚举法

1.定义:枚举法也称为穷举法,是利用计算机运算速度快、精确度高的特点,对要解决问题的所有可能情况,一个不漏地进行检验,从中找出符合要求的答案,因此枚举法是通过牺牲时间来换取答案的全面性。因此,使用枚举法解决问题时,需要考虑优化算法,选择恰当的枚举对象,尽量分析出问题中的隐含条件,缩小枚举范围,以提高解决问题的效率。
2.一般结构:循环(穷举范围)+判断(检验条件)。
 

例题1:请输出所有的两位偶数。

分析:

穷举范围:两位数范围是10-99。利用range(10,100)可生成10-99的列表

判断条件:偶数满足除以二的余数为0。i%2==0  此条件满足则i为偶数

代码如下:

for i in range(10,100):
    if i%2==0:
        print(i)

例题2:输入一个数,判断该数是否为质数

分析:

穷举范围:n为素数,需要满足n%2!=0,n%3!=0 ... n%n-1!=0,n的除数范围应该为2-n-1。

判断条件:n%i==0 则代表i是n的因数,n不是素数,当穷尽所有的i,该条件都不满足,则n为素数

代码如下:

n=int(input())
for i in range(2,n-1):
    if n%i==0:
        break
else:
    print(n,是素数)

例题3:请输出所有的两位质数

分析:

穷举范围:两位数范围是10-99。利用range(10,100)可生成10-99的列表

判断条件:判断每一个n是否为素数,利用例题2中相关代码

代码如下:

for n in range(10,100):
    for i in range(2,n-1):
        if n%i==0:
            break
    else:
        print(n,"是素数
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值