wikioi1430素數判定

2021-06-27 15:10:13 字數 1307 閱讀 5838



題目描述

description

質數又稱素數指在乙個大於1的自然數中,除了1和此整數自身外,不能被其他自然數整除的數

素數在數論中有著很重要的地位。比1大但不是素數的數稱為合數。1和0既非素數也非合數。質數是與合數相對立的兩個概念,二者構成了數論當中最基礎的定義之一。基於質數定義的基礎之上而建立的問題有很多世界級的難題,如哥德**猜想等。算術基本定理證明每個大於1的正整數都可以寫成素數的乘積,並且這種乘積的形式是唯一的。這個定理的重要一點是,將1排斥在素數集合以外。如果1被認為是素數,那麼這些嚴格的闡述就不得不加上一些限制條件。

概念

只有1和它本身兩個約數的自然數,叫質數(prime number)。(如:由2÷1=2,2÷2=1,可知2的約數只有1和它本身2這兩個約數,所以2就是質數。與之相對立的是合數:「除了1和它本身兩個約數外,還有其它約數的數,叫合數。」如:4÷1=4,4÷2=2,4÷4=1,很顯然,4的約數除了1和它本身4這兩個約數以外,還有約數2,所以4是合數。)

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,在100內共有25個質數。

注:(1)1既不是質數也不是合數。因為它的約數有且只有1這乙個約數。

(2)2和3是所有素數中唯一兩個連著的數 .

輸入描述 input description

第一行輸入乙個正整數n,n<=30000

輸出描述 output description

如果該數是質數,則輸出\t

否則輸出\n

樣例輸入 sample input

輸入樣例1

輸入樣例2

樣例輸出 sample output

樣例輸出1

\t樣例輸出2

\n資料範圍及提示 data size & hint

c或c++的初學者注意,"\"的意思

素數的判定方法:它如果存在因數,那麼一定可以寫成乘積的形式。比如m = 1 * m。如果它存在兩

綜上,對於試除遍歷求法,只需遍歷到根號m即可。

#include #include int isprime(int n)

return 1;

}int main()



CODEVS 1430 素數判定

題目描述 description 質數又稱素數 指在乙個大於1的自然數中,除了1和此整數自身外,不能被其他自然數整除的數 素數在數論中有著很重要的地位。比1大但不是素數的數稱為合數。1和0既非素數也非合數。質數是與合數相對立的兩個概念,二者構成了數論當中最基礎的定義之一。基於質數定義的基礎之上而建立...

WikiOI 2 3 3 素數判定

質數又稱素數。指在乙個大於1的自然數中,除了1和此整數自身外,不能被其他自然數整除的數。素數在數論中有著很重要的地位。比1大但不是素數的數稱為合數。1和0既非素數也非合數。質數是與合數相對立的兩個概念,二者構成了數論當中最基礎的定義之一。基於質數定義的基礎之上而建立的問題有很多世界級的難題,如哥德 ...

素數判定,素數篩

這些零碎的知識點每個都學過n次了,但隔一段時間就會忘,記錄下來 素數定義 只能被自身和1整除的大於1的正整數 通過這個定義,我們就可以得出判斷素數的 這裡用到了cmath中的sqrt函式,其原型為double sqrt double 所以在取上界的時候,為了避免double帶來的精度丟失,寧可多列舉...