Python求區(qū)間正整數(shù)內(nèi)所有素數(shù)之和的方法實例
前言
Python的學習記錄與分享——PTA程序設計類教學平臺。如果你也正在學習關于此類的題目可以仔細閱讀這篇文章,了解一下循環(huán)結構、素數(shù)的基本語法知識。
題目:
7-5就區(qū)間正整數(shù)內(nèi)所有素數(shù)之和 (20分)
【描述】求m-n以內(nèi)所有素數(shù)之和并輸出。素數(shù)指從大于1,且僅能被1和自己整除的整數(shù)。提示:可以逐一判斷區(qū)間[m,n]之間以內(nèi)每個數(shù)是否為素數(shù),然后求和。若m–n之間無素數(shù),則輸出“not have prime!”:
輸入格式:
在一行輸入2個正整數(shù)m,n。m可以大于n。例如計算1–100之間(包括100),可以輸入100 1
輸出格式:
若有素數(shù),輸出素數(shù)之和的一個整數(shù),若該區(qū)間沒有素數(shù)則輸出not have prime!。
輸入樣例:
1 100
輸出樣例:
1060
答案
m, n = map(int, input().split()) sum = 0 if m > n: m, n = n, m for i in range(m, n+1): if i != 1: for j in range(2, i): if i % j == 0: break else: pass else: sum += i if sum == 0: print('not have prime!') else: print(sum)
詳細解析:
首先了解什么是素數(shù)
質(zhì)數(shù)(Prime number),又稱素數(shù),指在大于1的自然數(shù)中,除了1和該數(shù)自身外,無法被其他自然數(shù)整除的數(shù)(也可定義為只有1與該數(shù)本身兩個因數(shù)的數(shù))。
舉個例子:7這個數(shù),從2開始一直到6,都不能被它整除,只有1和它本身(7)才能被整除,所以7就是一個質(zhì)數(shù)。
編寫代碼
1. 根據(jù)題目要求:在一行輸入2個正整數(shù)m,n。
m, n = map(int, input().split())
map()會根據(jù)提供的函數(shù)對指定序列做映射。它的返回結果是一個列表在
----這里的作用就是將多個輸入值批量轉換成in----
split()方法指定分隔符對字符串進行切片,如果參數(shù)num 有指定值則僅分隔 num 個子字符串
----這里的作用就是將輸入的一條字符串以空格為分隔符切割----
2. 首先學會判斷一個數(shù)是不是素數(shù)的代碼
i=7 "用7舉例" for j in range(2, i): "for循環(huán)讓7除以2-7之間的數(shù)" if i % j == 0: break "如果是i除j等于0說明不是素數(shù)直接(break)結束循環(huán)" else: print("是素數(shù)")
range(start,end,step=)-----range(開始值,結束值,步長)沒寫默認為1
3. 判斷多個數(shù)是不是素數(shù)
定義一個i,用for循環(huán)讓i在里面m-n之間取值
for i in range(m, n+1): if i != 1: “開始的條件必須是i不能等于1” for j in range(2, i): if i % j == 0: break else: pass else: sum += i “如果是就在sum里面加上這個(i)素數(shù)”
4. m、n從小到大排序
上面的素數(shù)判斷都會了后會發(fā)現(xiàn)一個問題就是,如果用戶輸入100 1時運行會發(fā)生錯誤那么我們則需要在判斷素數(shù)前保證m是小的值,n是大的值。
if m > n: m, n = n, m
5. 輸出答案
if sum == 0: “如果sum在前面的整個for循環(huán)里都沒有素數(shù)加入” print('not have prime!') “那么輸出'not have prime!'” else: “否則” print(sum) “輸出答案”
// An highlighted block var foo = 'bar';
結束
到此這篇關于Python求區(qū)間正整數(shù)內(nèi)所有素數(shù)之和的文章就介紹到這了,更多相關Python區(qū)間正整數(shù)內(nèi)所有素數(shù)之和內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Python實現(xiàn)將Markdown文檔轉為EPUB電子書文件
這篇文章主要為大家詳細介紹了Python如何實現(xiàn)將Markdown文檔轉為EPUB電子書文件,文中的示例代碼講解詳細,感興趣的小伙伴可以了解一下2023-06-06python自定義函數(shù)實現(xiàn)一個數(shù)的三次方計算方法
今天小編就為大家分享一篇python自定義函數(shù)實現(xiàn)一個數(shù)的三次方計算方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-01-01Python實現(xiàn)PS圖像調(diào)整黑白效果示例
這篇文章主要介紹了Python實現(xiàn)PS圖像調(diào)整黑白效果,結合實例形式分析了Python實現(xiàn)PS圖像的黑白效果原理與相關操作技巧,需要的朋友可以參考下2018-01-01python中join與os.path.join()函數(shù)實例詳解
os.path.join()函數(shù)用于路徑拼接文件路徑,下面這篇文章主要給大家介紹了關于python中join與os.path.join()函數(shù)的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2022-03-03