-
bool f=0;
for(int i=1000;i>=1;我--)從最大的數字 1000 開始,然後嘗試使用較小的數字。
for(int j=2;j<=i/2;J++) 將數字 i 除以 2 到 i 2 的所有數字,您可以自己思考為什麼這是可能的。
if(i%j==0){ 如果 i 將餘數 j 取為 0,即 i 能被 j 整除,如果可以,那麼 i 當然不是素數,標記並跳出。
f=1;break;
if(f==1){
f=0;如果 f==1,i 不是最大的素數,請繼續。 PS:繼續可以不新增。
continue;
else{break;
cout<<"1000 以內的最大素數為"<
-
我使用C++,它類似於C。
由於您只列印最大的素數之一,因此相對簡單。
#include
int main(){
for (int i=1000; i>=2 ;i--) 2 是最小的素數。
for (int j=2;j<=i/2;j++)if (i%j==0) break;跳出內環,轉到外環。 i-1
return i;因為內迴圈已經遍歷了整個除數。
我沒有除錯,總體思路是這樣的。 */
-
1. 首先建立乙個新的空白 C 語言檔案,引入標頭檔案,標頭檔案包含數學庫,稍後會用到,建立 main 函式:
2. 判斷素數的新函式是素數,它基於從 2 到算術平方根的數字是素數這一事實。 然後在 main 函式中遍歷 2 到 100 的數字,並呼叫 isprime 以確定是否滿足質數條件並輸出:
3.寫完**後,編譯後最後開啟除錯視窗,螢幕會列印出100以內的所有素數。 這就是 C 中 100 之間的所有素數:
-
輸出 1 到 10000 之間的所有質數 * 包含在 C 中
確定乙個數字是否為質數。
int is_prime_number(int value){int i = 0;
if(value <= 1)
return 0;
for (i=2; i
程式效果如下圖所示(太多,一張圖就看不完):
-
呃:你的if(i==m)沒有正確使用。
您在上面明確限制了 i<=m-1,並且只有當 m=2 時 i==m 才可能為真。
我會為你寫的。
#include
int main()
if(j==0)
return 0;}