2007年11月13日 星期二

判斷質數-gauge prime number

[所謂質數]
對於任何一個大於1的正整數,如果除了1和本身之外,沒有其他的因數,則稱這個數為質數(prime),否則則稱為合數(composite)。

[在 C++ 語言中判斷質數的方法]
A~B之間的數中,如果不是質數的話,必定會有1與本身以外的因數,這個非1以及本身的因數,最小是2,最大是此數的正平方根, 所以用迴圈從2跑到這個數的正平方根,若其中有任何一個數可以整除此數(也就是餘數為0),就表示它不是質數,於是跳離迴圈,但是,如果是有因數所以跳離迴圈時,值最大不會超過A的平方根,就以此判斷是不是質數。
但是這個寫法會將不是質數的1也顯示出來,
所以再加上IF的判斷就OK了。

----這是改寫YAHOO知識+裡的"楓兒"的想法---

[程式碼碼]

輸入1, 100 的結果↓

沒有留言: