判斷是否為質數的快速演算法,判斷乙個數是否為素數的演算法

時間 2021-12-25 07:54:38

1樓:1醉夢紅顏

// 判斷n是否為質數

bool isprimenumber(int n)if (n%2==0)

int sqrtn=(int)sqrt((double)n);

bool flag=true;

for (int i=3;i<=sqrtn;i+=2)}return flag;}

2樓:匿名使用者

你造一張素數表,假設很大,這個應該是最笨,但是最快

3樓:

我用篩法 篩選出 10^6以內的素數 大概耗時46ms

那你直接用篩法來判斷是不是質數不就ok了

4樓:匿名使用者

這個方法是目前最實用的 要突破時間 只能從數學方面入手

5樓:匿名使用者

直接定義乙個a[1000001],不用二分法,很快的:

#include

int a[1000001]=;

int main()

scanf("%d",&i);

while(i!=0)

return 0;}

6樓:板唱

#include

#include

#define size 1000000

char table[size];

int prime[168]=

;int init()}}

int main()

return 0;}

判斷乙個數是否為素數的演算法

7樓:小鈴鐺

找質數的方法:寫出這個數的因數。再判斷這個數是質數還是合數。

1、乙個數除了1和本身,不再有別的約數,這樣的數叫做質數或者素數。例如:2,3,5,7,11,13,17,19,23,29等等。

2、乙個數,除了1和本身,還的別的因數,這樣的數叫做合數。例如4、8、8、9等等。例如:

2的所有因數是1和2兩個,所以2是質數。例如6的所有因數是:1,2,3,6。

一共是4個,所以6是合數。

找因12的因數:

1×12=12 2×6=12 3×4=12 所以12的因數有:1,2,3,4,6,12。共6個。

找因數的方法可以把這個數分成兩個因數相乘的積。從一開始比較容易找,寫的時候最好能從小到大寫出來。重複的只能寫乙個。

例如9的因數:1×9=9 3×3=9 9的因數是:1,3,9共3個。

(重複的3只能寫乙個。)

8樓:百度文庫精選

內容來自使用者:kettykettykett判斷乙個數是否為素數。

#include

#include

void main( )

求100-200間的所有素數;

#include

#include

void main( )

if(n%10= =0)

printf(「\n」);

}printf(「\n」);} ?

函式:#include

void disp(x)

int x;

main( )

9樓:

因為沒必要去比較大於n/2的情況,因為n=2*n/2,假設m>n/2,那麼n必然不能被m整除,就好像100=2*50,不需要再去比較51,52....

判斷乙個數是不是質數的演算法,流程圖

10樓:匿名使用者

兩個演算法:

1。輸入乙個數n

flag=0;

for(int i=2;i

for(int j=2;j

...if(flag==0) printf("是質數");

...2.輸入乙個數n

flag=0;

for(int i=2;i

if(int(n/i)==n/i && int(n/i)!=1) printf("不是質數");flag=1;break;

...if(flag==0); printf(...);

...第乙個用雙迴圈舉出2到n-1中所有數的乘積,等於n則不是質數;

第二個用除法,n除以2到n-1中所有的數,結果為整數則不是質數(n/2=1的情況除外);

11樓:匿名使用者

這麼簡單的東西只要懂定義就能做,又沒有演算法效能要求,for乙個i=2~n-1然後判斷(n/i)*i==n的真假,真就跳出迴圈。

最後看i是不是等於n如果等於n就是素數不等於就不是。

怎樣快速的判斷寵物是否感染寄生蟲

南京大恩美 寵物沒有症狀不代表沒有感染寄生蟲!寵物感染寄生蟲發病時症狀輕重不一,這個和寵物體質及抗病能力有關,很多時候在潛伏初期,往往無跡可尋。一般來說,如果寵物有了以下症狀,就需要注意了 消瘦 食慾不振 腹瀉 嘔吐或腹瀉物帶血 毛髮暗淡等症狀,或者表現出不耐煩,豬耳撓腮 啃咬等反常症狀時,那就有很...

C 中如何判斷浮點數是否為,C 中 如何判斷乙個浮點數是否為

判斷這個實數的絕對值是否小於乙個很小的實數,比如絕對值小於1e 6 double a if fabs a 1e 6 return true else return false 戴曼彤 float f 0.000 bool bl f 0.000001 f 0.000001 大概就是這樣。 竹飆史春嵐 ...

程式設計判斷輸入的一串字元是否為“迴文”。所謂“迴文”,是指順讀和倒讀都一樣的字串

include stdio.h void main void if i j 1 printf y else printf n 上述程式,編譯後執行,最多可以輸入200個字元,回車鍵結束,程式會自動輸出 y n。用指標來做 include stdio.h void main void 測出字串長度.j...