這次的題目是輸入一個數,判斷是不是質數

題目在這http://e-tutor.itsa.org.tw/e-Tutor/mod/programming/view.php?id=30752

質數判別

成績: 0 / 倒扣: 0.8

問題描述:
試撰寫一個程式,由輸入一個整數,然後判別此數是否為質數。質數是指除了 1 和它本身之外,沒有其它的數可以整除它的數,例如, 2, 3, 5, 7 與 11 等皆為質數。

輸入說明
輸入一個正整數。

輸出說明:
質數顯示 YES ;非質數顯示 NO 。

範例:

 

Sample Input:

Sample Output:

23
37
39

YES
YES
NO

質數就是除1跟自己以外,沒有其他的因數了

所以用一個for迴圈來寫判

判斷之前,要先把特例分出來

1,質數從2開始,所以for的範圍是從2開始到<input的數

如果程式這樣寫

則1不在這範圍裡,程式在執行時,因為迴圈的範圍沒包刮到

所以迴圈就不會執行,c最後是0,讓1是質數,但實際並不是

相同情況的2,因為(int i=2;i<input;i++)

2並不小於2,所以也因為範圍的原因,不執行迴圈,但2實際上是質數

所以就不用寫一個2的特定狀況

最後,程式碼

 

 

     

若想閱讀相關文章請關注我的粉絲團

小資菜鳥向前衝

https://www.facebook.com/%E5%B0%8F%E8%B3%87%E8%8F%9C%E9%B3%A5%E5%90%91%E5%89%8D%E8%A1%9D-204484273323335/?fref=ts

 

文章標籤
創作者介紹

cychss6305的部落格

cychss6305 發表在 痞客邦 PIXNET 留言(0) 人氣()