1樓:
1、首先,開啟clion,在指定的位置建立一個project。點選file->new project。
2、這裡選擇工程的儲存路徑,並輸入工程名,使用c++11標準,會預設建立一個main.cpp。
3、首先建立一個標頭檔案,宣告判斷是否為素數的函式。在專案上右擊->new->c/c++ header file。
4、宣告判斷是否為素數的函式,輸入為一個整型,輸出為0或1。
5、新增一個原始檔,用於寫函式的具體實現。在專案上右擊->new->c/c++ source file。
6、首先對小於2的數過濾,它們不需要進行判斷,一定不是素數。
7、接下來使用for迴圈依次對2~n^(0.5)之間的數進行判斷,若能整除,返回0,說明不是素數。最後,所有都不能整除,再返回1。
8、該程式的輸出結果如下。
2樓:匿名使用者
一、什麼是素數
素數指在一個大於1的自然數中,除了1和此整數自身外,沒法被其他自然數整除的數。換句話說,只有兩個正因數(1和自己)的自然數即為素數。比1大但不是素數的數稱為合數。
1和0既非素數也非合數。
二、流程圖
三、相關**
3樓:匿名使用者
舉例說,判斷2^67-1是否為素數(如果是則叫做梅森素數),必須證明,這個數有無出自身外的其他因子,若有則不是素數,若無則是素數。人工操作,問題有時候會變得極其複雜,歷史上有一位數學家為了證明這個問題,耗費了20年的業餘時間,才找到:2^67-1=761838257287*193707721表明它不是素數;類似的,如何判斷2^61-1是不是素數呢?
單憑人工檢驗篩除,工作量將是非常巨大的。
好在計算機數學軟體的問世與不斷的發展為人們解決這類問題提供了強大的工具,能用maple檢驗,2^61-1確為一個(梅森素數第九個)素數。
判斷一個正整數是不是素數,這樣艱難無比的工作隨著計算機的出現,將不在困擾人的腦力,同時也讓很多優質大腦擺脫了這種相當枯燥的勞動。
我的意思是,正如開方計算三角函式值這類運算被工具所取代一樣,這種工作我們可以放心地交給計算機來完成了。
c++編寫判斷一個正整數是否是素數的函式
4樓:匿名使用者
int prime(int x)
return 1;}
5樓:育知同創教育
c++編寫判斷素數的函式:
**如下:
//程式的目的是求0-n之間所有的素數,以下是思路#include
#include
void main()
if(f==1)//當i除以除1外所有自己的因數時,若都有餘數,則此數為素數。
cout<
根據算術基本定理,每一個比1大的整數,要麼本身是一個質數,要麼可以寫成一系列質數的乘積;而且如果不考慮這些質數在乘積中的順序,那麼寫出來的形式是唯一的。最小的質數是2。
6樓:陸蕭涵
int prime(int x)
你的函式執行後,如果是素數,返回 1,否則返回 0;
if(b==0) 這個語句寫反了,b=0就不是素數啦;
你的int prime(int x)函式裡也是錯的,if語句不能跳出迴圈,所以返回的 t就是就是最後一次迴圈的值
。#include
using namespace std;
int prime(int x)
}return 0;}
7樓:tnt丨小軒
int prime(int x)
}return 0;
}替換下自己看看就明白了,主要要+1 ,要不然5這個不能判斷。
C語言程式題 判斷正整數n是否為素數,若n為素數則返回1,否則返0。拜託拜託,真的很急
很難的,你要有素數表的資料庫。然後對比一下就好了 include includeintsushu intx intmain for i 0 i include include int isprime int m int main include int main if flag printf d是素...
定義判斷整數是否為素數的函式。利用判斷素數的函式,求得2 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 不知道你要什麼,so程式也給你了 希望能有你希望要的答案 vc6.0平臺上的程式 include 表示101以內的數字可以測試 length後面的數字可以修改...
求流程圖正整數有可能可以被表示為nn2個連續正
設待測資料為n 使用迴圈巢狀結構,共內外兩個迴圈。裡面的那個迴圈負責不斷試探 從2個連續整數的累加值 該組連續值從某個整數值a開始 到n個連續整數累加值是否等於n。比如 從試探1 2開始,然後試探1 2 3,然後1 2 3 4,一直試探到1 2 3 n。此時該組連續值是從1開始的,即a 1。連續整數...