欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python獲取100以內(nèi)的質(zhì)數(shù)3種方式總結(jié)

 更新時間:2024年08月15日 10:10:27   作者:'hello_world'529  
質(zhì)數(shù)也稱為質(zhì)數(shù),具有無限個,質(zhì)數(shù)定義為大于1的自然數(shù),除了1和它本省外沒有其他因數(shù)的數(shù)稱為質(zhì)數(shù),這篇文章主要給大家介紹了關(guān)于python獲取100以內(nèi)質(zhì)數(shù)的3種方式,需要的朋友可以參考下

1. 質(zhì)數(shù)

質(zhì)數(shù)是只有1和它本身兩個因數(shù)的自然數(shù)(大于1);2是最小的質(zhì)數(shù),也是唯一的偶質(zhì)數(shù);1既不是質(zhì)數(shù),也不是合數(shù)。100以內(nèi)的質(zhì)數(shù)有: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,100以內(nèi)的質(zhì)數(shù)共有25個。

2. 方式1:使用嵌套循環(huán),判斷這個數(shù)是否存在除1和它本身外的其他因數(shù)

# 定義一個空列表用于存放100以內(nèi)的質(zhì)數(shù)
prime_num = []
# 遍歷獲取2~100之間的整數(shù),外層循環(huán)控制取值
for num in range(2, 101):
    # 內(nèi)層循環(huán)取因數(shù)(除1和它本身外)
    for i in range(2, num):
        # 判斷num是否是質(zhì)數(shù),在2~num-1之間能否找到一個數(shù),能被i整除
        if num % i == 0:
            # 不是質(zhì)數(shù),結(jié)束內(nèi)層循環(huán),判斷下一個數(shù)
            break
    # break不執(zhí)行,else執(zhí)行,則num是一個質(zhì)數(shù)
    else:
        # 將質(zhì)數(shù)num添加到列表中
        prime_num.append(num)
print(prime_num)

3. 方式2:假設(shè)法,假設(shè)num是一個質(zhì)數(shù)

prime_num = []
for num in range(2, 101):
    # 假設(shè)num是一個質(zhì)數(shù)
    result = True
    for i in range(2, num):
        # 判斷成立,num不是一個質(zhì)數(shù)
        if num % i == 0:
            result = False
            # 結(jié)束內(nèi)層循環(huán),判斷下一個數(shù)
            break
    # num是質(zhì)數(shù),則添加到列表中
    if result:
        prime_num.append(num)
print(prime_num)

4. 方式3:統(tǒng)計num的因數(shù)的個數(shù)

# 統(tǒng)計100以內(nèi)質(zhì)數(shù)的個數(shù)
prime_count = 0
prime_num = []
for num in range(2, 101):
    # 統(tǒng)計因數(shù)的個數(shù)
    factor_count = 0
    for i in range(1, num+1):
        # 條件成立,因數(shù)的個數(shù)加1
        if num % i == 0:
            factor_count += 1
    # 質(zhì)數(shù)只有2個因數(shù),1和它本身
    if factor_count == 2:
        prime_count += 1
        prime_num.append(num)
print('100以內(nèi)的質(zhì)數(shù)如下:')
print(prime_num)
print(f'100以內(nèi)有{prime_count}個質(zhì)數(shù)')

圖1 程序運行結(jié)果

5. 封裝一個函數(shù),判斷一個數(shù)是否是質(zhì)數(shù)。

def isprime(num):
    # 2是最小的質(zhì)數(shù),小于2則不是質(zhì)數(shù)
    if num < 2:
        return False
    else:
        # 假設(shè)num是一個質(zhì)數(shù)
        result = True
        for i in range(2, num):
            # 條件成立,則num不是質(zhì)數(shù)
            if num % i == 0:
                result = False
                break
        return result
print(isprime(-2024))
print(isprime(5))
print(isprime(2025))
print(isprime(2027))

圖2 程序運行結(jié)果

附:計算小于N的素數(shù)個數(shù)

  • 輸入: 10
  • 輸出: 4

小于10的素數(shù)共4個:2, 3, 5, 7

from math import sqrt
def isPrime(n):
    for i in range(2,int(sqrt(n))+1):
        if n%i==0:
            return False
    return True

def countPrime(N):
    if N<3:
        return 0
    else:
        cou = 1
        for i in range(3,N,2):
            if isPrime(i):
                cou += 1
    return cou
print(countPrime(2))
print(countPrime(5))
print(countPrime(100))
print(countPrime(100000))  
print(countPrime(10000000))#在n>100000000時達到計算瓶頸

輸出:

0
2
25
9592
664579

總結(jié)

到此這篇關(guān)于python獲取100以內(nèi)的質(zhì)數(shù)3種方式的文章就介紹到這了,更多相關(guān)python獲取100以內(nèi)質(zhì)數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 一文帶你搞懂Python中的數(shù)據(jù)容器

    一文帶你搞懂Python中的數(shù)據(jù)容器

    這篇文章主要為大家詳細介紹了Python中數(shù)據(jù)容器的相關(guān)資料,文中的示例代碼講解詳細,對我們學習Python有一定的幫助,感興趣的可以了解一下
    2022-11-11
  • 淺談django model postgres的json字段編碼問題

    淺談django model postgres的json字段編碼問題

    下面小編就為大家分享一篇淺談django model postgres的json字段編碼問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-01-01
  • 如何在django中添加日志功能

    如何在django中添加日志功能

    這篇文章主要介紹了django中添加日志功能,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-02-02
  • 集成開發(fā)環(huán)境Pycharm的安裝及模板設(shè)置圖文教程

    集成開發(fā)環(huán)境Pycharm的安裝及模板設(shè)置圖文教程

    PyCharm是一種Python的集成開發(fā)環(huán)境,帶有一整套可以幫助用戶在使用Python語言開發(fā)時提高效率的工具,這篇文章主要介紹了集成開發(fā)環(huán)境Pycharm的安裝及模板設(shè)置,需要的朋友可以參考下
    2022-07-07
  • 基于Pytorch版yolov5的滑塊驗證碼破解思路詳解

    基于Pytorch版yolov5的滑塊驗證碼破解思路詳解

    這篇文章主要介紹了基于Pytorch版yolov5的滑塊驗證碼破解思路詳解,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-02-02
  • PyQt5結(jié)合matplotlib繪圖的實現(xiàn)示例

    PyQt5結(jié)合matplotlib繪圖的實現(xiàn)示例

    這篇文章主要介紹了PyQt5結(jié)合matplotlib繪圖的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-09-09
  • python實現(xiàn)登錄密碼重置簡易操作代碼

    python實現(xiàn)登錄密碼重置簡易操作代碼

    這篇文章主要介紹了python實現(xiàn)登錄密碼重置簡易操作,代碼簡單易懂,非常不錯,具有一定的參考借鑒價值 ,需要的朋友可以參考下
    2019-08-08
  • 你們要的Python繪畫3D太陽系詳細代碼

    你們要的Python繪畫3D太陽系詳細代碼

    這篇文章主要給大家介紹了關(guān)于如何利用Python 繪畫3D太陽系,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-10-10
  • Pycharm使用matplotlib警告\不能顯示的問題及解決

    Pycharm使用matplotlib警告\不能顯示的問題及解決

    在PyCharm中使用matplotlib畫圖時遇到警告和圖像顯示問題,通過在代碼中添加`mpl.use('TkAgg')`或`plt.switch_backend('TkAgg')`,可以解決警告并彈出顯示完整的圖像窗口,同時,文章還列舉了matplotlib的其他backend選項,如Qt4Agg、Qt5Agg、WXAgg等
    2025-02-02
  • Python實現(xiàn)將n個點均勻地分布在球面上的方法

    Python實現(xiàn)將n個點均勻地分布在球面上的方法

    這篇文章主要介紹了Python實現(xiàn)將n個點均勻地分布在球面上的方法,涉及Python繪圖的技巧與相關(guān)數(shù)學函數(shù)的調(diào)用,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-03-03

最新評論