六種。
方法一: 窮舉法
方法二: 開方減"半"法
方法三:去除偶數法
方法四:使用列表法。
方法五:素數性質法
方法六: 埃拉托斯特尼篩法
拓展資料:Python由荷蘭數學和計算機科學研究學會的Guido van Rossum 於1990 年代初設計,作為一門叫做ABC語言的替代品。Python提供了高效的高級數據結構,還能簡單有效地面向對象編程。Python語法和動態類型,以及解釋型語言的本質,使它成為多數平台上寫腳本和快速開發應用的編程語言,隨著版本的不斷更新和語言新功能的添加,逐漸被用於獨立的、大型項目的開發。Python解釋器易於擴展,可以使用C或C++(或者其他可以通過C調用的語言)擴展新的功能和數據類型。Python 也可用於可定製化軟體中的擴展程序語言。Python豐富的標准庫,提供了適用於各個主要系統平台的源碼或機器碼。2021年10月,語言流行指數的編譯器Tiobe將Python加冕為最受歡迎的編程語言,20年來首次將其置於Java、C和JavaScript之上
Python已經成為最受歡迎的程序設計語言之一。自從2004年以後,python的使用率呈線性增長。Python 2於2000年10月16日發布,穩定版本是Python 2.7。Python 3於2008年12月3日發布,不完全兼容Python 2。2011年1月,它被TIOBE編程語言排行榜評為2010年度語言。
由於Python語言的簡潔性、易讀性以及可擴展性,在國外用Python做科學計算的研究機構日益增多,一些知名大學已經採用Python來教授程序設計課程。例如卡耐基梅隆大學的編程基礎、麻省理工學院的計算機科學及編程導論就使用Python語言講授。眾多開源的科學計算軟體包都提供了Python的調用介面,例如著名的計算機視覺庫OpenCV、三維可視化庫VTK、醫學圖像處理庫ITK。而Python專用的科學計算擴展庫就更多了,例如如下3個十分經典的科學計算擴展庫:NumPy、SciPy和matplotlib,它們分別為Python提供了快速數組處理、數值運算以及繪圖功能。因此Python語言及其眾多的擴展庫所構成的開發環境十分適合工程技術、科研人員處理實驗數據、製作圖表,甚至開發科學計算應用程序。2018年3月,該語言作者在郵件列表上宣布Python 2.7將於2020年1月1日終止支持。用戶如果想要在這個日期之後繼續得到與Python 2.7有關的支持,則需要付費給商業供應商。
② python如何算質數和
你好的!
importmath
defis_prime(n):#簡化問題,先利用函數判斷是否為質數
ifn==1:#=是賦值,==才是判斷,切記切記
returnFalse
foriinrange(2,int(math.sqrt(n))+1):#質數判斷條件,注意+1
ifn%i==0:
returnFalse
returnTrue
primes=[]
name=int(input())
foriinrange(1,name):#注意這個逗號,很容易寫錯!
ifis_prime(i)isTrue:#bool值用is判斷
primes.append(i)
print('100以內的素數:{} 100以內素數和:{}'.format(primes,sum(primes)))
歡迎追加懸賞並採納!
③ python素數怎麼求
1、示例代碼
import math
def isPreme(smk):
i = 2
for i in range(2, smk):
j = 2
for j in range(2, int(math.sqrt(i)+1)):
if (i % j == 0):
break
else:
print('%s是素數' % i)
isPreme(20)
2、示例結果
2是素數
3是素數
5是素數
7是素數
11是素數
13是素數
17是素數
19是素數
④ python中如何編程求1到100之間的素數
#!/usr/bin/python
#-*- coding:UTF-8 -*-
#求素數
list=[]
i=2
for i in range (2,100):
j=2
for j in range(2,i):
if(i%j==0):
break
else:
list.append(i)
print(list)
(4)python計算質數擴展閱讀:
python:for語句的使用方法
for循環的語法格式:
for i in range(n):#從數據類型中拿一個值賦值給i
print(i)#列印i
例如:
#for
for i in range (1,6,2):#從一開始到六之前每隔上2個數字
print(i)#結果為1,3,5
# ------------------------------------------------
s = ["man", "woman", "girl", "boy", "sister"]
for i in s:#列表s中的每個元素給i
print(i)
#-------------------------------------------------
for i in range(5):
print(i)#結果為:0,1,2,3,4
for循環實例:數字0,1,2組成一個百位數,並且數字不重復!
#for
for i in range(0,3):
for j in range(0,3):
for k in range(0,3):
if (i != 0) and (i != j) and (i != k) and (j != k):
print (i,j,k)
⑤ python求質數的代碼
def Is_Prime(n):
for i in range(2,int(n**(1/2))+1):
if n % i == 0:
return False
break
else:
return True
程序縮進如圖所示
⑥ 用Python找質數
n=10000
numbers=list(range(2,n+1))
i=2
whilei<10001:
forminnumbers:
ifi<m:
whilem%i==0:#這邊你為什麼要用while呢,這邊如果m=3,i=2的話是會進入死循環的,改成if語句試試
k=m#這個沒必要存在,只接用numbers.remove(m)
numbers.remove(k)
i=i+1
print(numbers)
print(" Therewere",len(numbers),"primenumbersupto",n)
#下面是修改後的
n=10000
numbers=list(range(2,n+1))
i=2
whilei<10001:
forminnumbers:
ifi<mandm%i==0:
numbers.remove(m)
i=i+1
print(numbers)
print(" Therewere",len(numbers),"primenumbersupto",n)
⑦ python用自定義函數求2到100的質數
fun函數有邏輯錯誤,改成:
##注意:最左邊每個=表示一個空格
def fun(m):
====for i in range(2,m):
========if m%i==0:
============return False
====return True
⑧ Python求質數
如下:
importmath
defm(a,b):
ret=0
forxinrange(a,b+1):
foryinrange(2,int(math.sqrt(x))+1):
ifx%y==0:
break
else:
ret+=1
print(ret)
輸入:m(3,7)
得到:3
⑨ python判斷質數的個數
#!/usr/bin/python3
# -*- coding:utf-8 -*-
# @FileName :20200924_02.py
# @Time :2020/9/24 14:48
# @Author :Storm_ke
"""
統計質數的個數
"""
# import
def is_prime(n):
"""判斷一個正整數是否為素數"""
if isinstance(n, int):
try:
for ind in range(2, n):
if n % ind == 0:
return False
return True
except ValueError:
return Exception
else:
return False
if __name__ == "__main__":
prime_count = 0
for i in range(1, 101):
if is_prime(i):
prime_count += 1
print("1到100之間有質數{0}個。".format(prime_count))
⑩ python中如何編程求1到100之間的素數
摘要 你好,建議您根據以下方法提示,逐步操作,解決問題,謝謝。