這是網路上的答案 有說明~~ 要複製前請回覆~- #include <iostream.h> //引進 io 程式庫
- #include <math.h> //引進數學程式庫
- int chk(int number) //檢查是否為 質數 1 為質數 0為非質數
- {
- for (int i=2 ; i <= ( (int) ( sqrt(number)) ) ; i++ ) //將number開根號後求出所需比的數
- if ( (number % i) == 0 ) return 0; // 如果 number %i 餘數等於零即為非質數
- return 1; //比完後並沒有可整除數 即為質數 return 1(為質數)
- }
- int main() {
- int num; //輸入數字的 變數
- cout << "input number : ";
- cin >> num; //輸入
- for(int j=1;j<=num;j++) { // 從1 到num 找質數
- if ( chk(j) ) cout << j<< endl; //呼叫 chk() 確認j 是否為質數 是則 印出此數
- }
- system("pause");
- return 0;
- }
複製代碼 |