python求100以内的质数

list=[]
flag=True
for i in range(2,100):
    for j in range(2,i):
        if i%j==0:
            flag=False
            break
        else:
            flag=True
    if flag==True:
        list.append(i)
        # ','.join(list)
print(list)

1.首先写定义一个空列表跟一个标志是否质数的变量,判断是否是质数的标志,默认为True

2.定义两重循环,第一重循环i从大于1开始,求100以内的可以写101(以后如果求n以内的可以设置为n+1)

3.第二重循环从大于1开始,直到i,不包括i

4.判断如果i%j==0,说明除了1个他本身还有其他可以整除的,说明不是质数,直接将质数标志置为False,同时第二层循环终止

5.为避免说结束循环的时候,标志质数的变量值没有变,所以,要有一层else的判断

6.如果说第二层循环结束了,还是没有找到能被1跟他本身整除的数,那么这个数就是质数,把这个值加入到空列表中,最后返回这个列表就行了

还有其他方法,也贴一下

list=[]
for i in range(2,101):
    flag=True
    for j in range(2,i):
        if i%j==0:
            flag=False
            break
    if flag:
        list.append(str(i))
        # ','.join(list)
print(list)

 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值