菜鸟教程 -- 学的不仅是技术,更是梦想!

Python 基础教程
(追記) (追記ここまで)

Python 练习实例36

Python 100例 Python 100例

题目:求100之内的素数。

程序分析:无。

程序源代码:

实例

#!/usr/bin/python# -*- coding: UTF-8 -*-# 输出指定范围内的素数# 用户输入数据lower = int(input("输入区间最小值: "))upper = int(input("输入区间最大值: "))fornuminrange(lower,upper + 1): # 素数大于 1ifnum > 1: foriinrange(2,num): if(num % i) == 0: breakelse: print(num)

以上实例输出结果为:

输入区间最小值: 1
输入区间最大值: 100
2
3
5
7
11
13
17
19
23
29
31
37
41
43
47
53
59
61
67
71
73
79
83
89
97

Python 100例 Python 100例

AI 思考中...

5 篇笔记 写笔记

  1. #0

    Dr.D

    hah***[email protected]

    2

    列出所有素数以及素数个数,使用 num/2+1 方式减少计算量

    #!/usr/bin/python
    # -*- coding: UTF-8 -*-
    lower = int(input("输入区间最小值: "))
    upper = int(input("输入区间最大值: "))
    n = 0
    for num in range(lower, upper + 1):
     if num >1:
     for i in range(2,num/2+1):
     if num%i ==0:
     break
     else:
     print (num)
     n += 1
    print lower,'到',upper,'素数总数为',n
    

    Dr.D

    hah***[email protected]

    9年前 (2017年06月07日)
  2. #0

    红萝卜

    101***[email protected]

    2

    参考方法:

    #!/usr/bin/python
    # -*- coding: UTF-8 -*-
    import numpy as np
    num=np.arange(101)
    for i in num[2:101]:
     c=0
     mod1=[]
     mod1.append(np.mod(i,num[1:101]))
     c=np.count_nonzero(mod1)
     if(np.size(mod1)-c <= 2):
     print i,

    红萝卜

    101***[email protected]

    9年前 (2017年07月25日)
  3. #0

    bihar

    sbh***163.com

    12

    参考方法:

    #!/usr/bin/python
    # -*- coding: UTF-8 -*-
    for i in range(2,100):
     if 0 not in [i%n for n in range(2,i)]:
     print i,
    

    bihar

    sbh***163.com

    9年前 (2017年08月07日)
  4. #0

    大大大大大大大熊

    382***[email protected]

    2

    兼容 Python2.x 与 Python3.x:

    import math
    def is_prime(n):
     for i in range(2,int(math.sqrt(n))+1):
     if n%i==0:
     return False
     else:
     return True
    if __name__ == "__main__":
     primes = [i for i in range(2,100) if is_prime(i)]
     print(primes)

    大大大大大大大熊

    382***[email protected]

    9年前 (2017年09月20日)
  5. #0
    3

    python2 与 python3实测通过:

    # -*- coding: UTF-8 -*-
    a = []
    for i in range(2, 101):
     for j in range(2, 101):
     if i * j <= 100:
     a.append(i * j)
    b = set(a)
    c = set(range(1, 101))
    d = c - b
    print(d)
    9年前 (2017年11月24日)

点我分享笔记

  • 昵称 (必填)
  • 邮箱 (必填)
  • 引用地址

AltStyle によって変換されたページ (->オリジナル) /