zoukankan      html  css  js  c++  java
  • python3练习:求质数/素数

    代码

    # 求10以内的素数,质数:方法1
    num1=[]
    for i in range(2,10):        #质数不为0,1 所以范围从2起
       for j in range(2,i):
          if i%j==0:
             break               #能被比它小的数整除,则break
       else:                     #不能被比它小的数整除,则执行else,把这个数添加到列表中
          num1.append(i)          #[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47]
    print(num1)
    
    # 求10以内的素数,质数:方法2
    num11 = [x for x in range(2,10) if not [y for y in range(2,x) if x%y == 0]]
    print(num11)
    
    # 求10以内的素数,质数:方法3
    import math
    num2 = []
    for i in range(2,10):
        for j in range(2,int(math.sqrt(i)+1)):   #math.sqrt(i):i的平方根
            if (i%j==0):
                break
        else:
            num2.append(i)
    print(num2)
    
    # 求10以内的素数,质数:方法4
    num22 = [x for x in range(2,10) if not [y for y in range(2,int(math.sqrt(x))+1) if x%y == 0]]
    print (num22)

    结果

    [2, 3, 5, 7]
    [2, 3, 5, 7]
    [2, 3, 5, 7]
    [2, 3, 5, 7]
  • 相关阅读:
    Kendo
    过河
    数组分组(简单dp)
    Codeforces Round #604 (Div. 2)(A-E)
    HDU1253
    HDU1026
    linux常用命令(二) --目录操作
    linux常用命令(一)--ls
    hdu 1072
    Codeforces Round #597 (Div. 2)(A-D)
  • 原文地址:https://www.cnblogs.com/jxba/p/11954737.html
Copyright © 2011-2022 走看看