1樓:樹又綠皮敏
解釋如下:
#include"stdio.h"
#include"math.h"
main()
2樓:匿名使用者
#include"stdio.h"
#include"math.h"
void main()
3樓:匿名使用者
最佳方案是用素數分佈來處理,在處理大素數時尤其合理,用算術基本定理可能太慢了。如果知道素數分佈相關知識,編出來還是很容易的,不然告訴你也是白搭。
4樓:
#include
#include
main()
if(i<=i)printf("yes");}
5樓:衷覓肥半槐
#include
using
namespace
std;
void
main()
if(i*i>=n)
cout<<"yes\n";}
6樓:問明
方法一:
#include<stdio.h>
int main(){
int i,j;
printf("請輸入一個正整數。\n");
scanf("%d",&i);
if(i<2)
printf("小於2,請重新輸入。\n");
elseif(i%2==0)
printf("%d不是一個素數。\n",i);
else{
for(j=2;j<=i/2;j++){
if(i%j==0){
printf("%d不是一個素數。\n",i);
break;
if(j>i/2){
printf("%d是一個素數。\n",i);
break;
方法二:
#include<stdio.h>
int main(){
int a=0;
int num=0;
scanf("%d",&num);
for(inti=2;i<num-1;i++){if(num%i==0){
a++;
if(a==0){
printf("yes\n");
}else{
printf("no\n");
方法三:
#include"stdio.h"
int main(){
printf("\t\t\t\t\thelloworld\n");
int a,i;
do{printf("inputnumberjudgeprimenumber:\n");
scanf("%d",&a);
for(i=2;i<a;i++)
if(a%i==0)break;
if(i==a)
printf("%d是素數\n",a);
else
printf("%d不是素數\n",a);
}while(a!=0);
如何用c語言程式設計判斷一個數是不是素數?
7樓:問明
方法一:
#include<stdio.h>
int main(){
int i,j;
printf("請輸入一個正整數。\n");
scanf("%d",&i);
if(i<2)
printf("小於2,請重新輸入。\n");
elseif(i%2==0)
printf("%d不是一個素數。\n",i);
else{
for(j=2;j<=i/2;j++){
if(i%j==0){
printf("%d不是一個素數。\n",i);
break;
}if(j>i/2){
printf("%d是一個素數。\n",i);
break;}}
}}方法二:
#include<stdio.h>
int main(){
int a=0;
int num=0;
scanf("%d",&num);
for(inti=2;i<num-1;i++){if(num%i==0){
a++;}}
if(a==0){
printf("yes\n");
}else{
printf("no\n");}}
方法三:
#include"stdio.h"
int main(){
printf("\t\t\t\t\thelloworld\n");
int a,i;
do{printf("inputnumberjudgeprimenumber:\n");
scanf("%d",&a);
for(i=2;i<a;i++)
if(a%i==0)break;
if(i==a)
printf("%d是素數\n",a);
else
printf("%d不是素數\n",a);
}while(a!=0);}
8樓:風若遠去何人留
判斷素數的方法很多。
以數學方法為例,按照數學規則,如果在2~n-1中存在因子,則n不是素數。否則n為素數。
int is_prime(int n)//判斷n是否為素數。
在此基礎上,可以將判斷範圍優化為i <= n/2 或i <=sqrt(n)(sqrt為算數平方根函式)。
這樣可以減少判斷次數,提高效率。
9樓:匿名使用者
樓上的那複製來的?我的修改一下#includeint prime(int m)
main()
負數、0、 1都不是素數,所以輸入它們的時候顯示不是素數(素數是從2開始的)
c語言怎麼判斷一個數是素數 10
10樓:千山飛雪
判斷是否是質數bai最直觀和簡du
單的方法就是從2開始直zhi接除,能除盡dao(餘數為0)就不是質數。則
版c語言實權現為:
int isprime(int m)
{int i;
for(i=2;i該演算法的時間複雜度o(n)。
可以改進一下,根據如果一個數是合數,那麼它的最小質因數肯定小於等於它的平方根。用反證法可以證明一下。假設x是n的最小質因數,則存在n/x=p。
p>x,x*p=n。如果x不小於等於它的平方根,則x*x>n,而p>x,故x*p>n,假設不成立。合數是與質數相對應的自然數。
一個大於1的自然數如果它不是合數,則它是質數。也就是說如果一個數能被它的最小質因數整除的話,那它肯定是合數,即不是質數。所以判斷一個數是否是質數,只需判斷它是否能被小於它開跟號後的所有數整除,因此,這樣做的運算少了很多,降低了時間複雜度。
11樓:漢族小子當政委
不要拍照,直接copy**上來看吧。。。。看不清。。。
如何判斷數是不是素數,如何判斷一個數是不是素數????
黃河水十八彎 方法一 用試除法判斷一個自然數a是不是質數時,用各個質數從小到大依次去除a,如果到某一個質數正好整除,這個a就可以斷定不是質數 如果不能整除,當不完全商又小於這個質數時,就不必再繼續試除,可以斷定a必然是質數 方法二 只要找出x為一個奇數和一個偶數平方差的形式 這是一定的 便可以a2 ...
用c語言編寫“判斷數是否為完數”
飛喵某 2 首先是用scanf函式定義一個輸入數字的功能,然後判斷完數,通過取餘 的方法來進行判斷。如果判斷出來取餘結果為0,那麼就把這些因子全部加起來,得到因子的和和與n進行比較,如果相等,那麼就是完數,反之不是完數 最後需要輸出結果 3 最後使用快捷鍵crtl f5編譯除錯一下程式,開啟的命令列...
用c語言寫一個判斷數字是否是素數的函式
判斷一個整數m是否是素數,只需把m被 2 m 1 之間的每一個整數去除,如果都不能被整除,那麼m就是一個素數。思路1 的 include int main elsereturn 0 判斷方法還可以簡化。m不必被 2 m 1 之間的每一個整數去除,只需被 2 之間的每一個整數去除就可以了。如果m不能被...