c求素數個數,C 求素數個數

2022-02-21 22:21:04 字數 2894 閱讀 1092

1樓:喵殺

篩選法求n以內的素數個數:

#include

#include

using namespace std;

int filter(int n);

int main()

int filter(int n)

int i, j;

int count = 0; // 素數統計bool* flag = new bool[n+1]; // 素數標記,素數為1,非素數為0

flag[2] = 1;

for (i = 3; i < n; i++)if (n % 2 != 0)

for (i = 3; i <= sqrt((double)n); i++)

}for (i = 2; i <= n; i++)delete flag; // 釋放記憶體

return count;

}希望對你有幫助!

2樓:郝在益

#include

#include

bool isp(int n)

void main()

j++;

}cout<<"結果為:"<

3樓:

//#include "stdafx.h"//vc++6.0加上這一行.

#include "stdio.h"

void main(void)

printf("%d\n",sum);}

用c++編寫一個求1000以內的素數及所有素數的個數

4樓:風若遠去何人留

#include

#include

int isprime(int n)

int main()

}cout << endl << "total:" << c<

5樓:匿名使用者

#include

#include

int prime(int n)

int main()

}printf("count = %d,sum = %d\n",cnt,sum);

return 0;}

6樓:世界文明導師

//可以用erotosthenes篩法,時間複雜度為o(nloglogn)(已接近線性)。

//還有線性篩法,但實現起來有些煩瑣。

//eratosthenes

#include

using namespace std;

void primes(int n)

}int main()

7樓:聽不清啊

#include

#include

using namespace std;

int isprime(int n)

{int i;

for(i=2;i*i<=n;i++)

if(!(n%i))return 0;

return n>1;

int main()

{int i,n=0;

for(i=2;i<1000;i++)

if(isprime(i))

{printf("%4d",i);

n++;

printf("\n1000以內的素數個數=%d\n",n);

return 0;

8樓:小丁雞摩羯

#include

const int start=2;

const int num=1000;

using namespace std;

int main()

//如果數字大於2,判斷i%j是否等於0,0就退出迴圈,不是素數while(i%j)}}

cout<<"count:"<

return 0;}

9樓:劉相辰的老巢

#include

main()

}if(b>=a)

}printf("共有%d個素數",d);}

10樓:匿名使用者

上邊的sqrt(n),改為sqrt(n*1.0)

因為n是int型

c++程式設計求一個數的所有素數因子

11樓:篤俠

沒有語法錯,但演算法有問題。請看下面程式:

#include

using namespace std;

int main()

else

i++;

}if(n0!=1)

cout <

cout <

12樓:匿名使用者

#include

using namespace std;

int main()

i++;

}cout <

system("pause");

} 這樣可以避免重複輸出

用c++語言編一個 能在m~n範圍內求出素數的個數 的程式 例如輸入2 5 輸出3

13樓:你猜我猜哇擦猜

下面的程式已經給你修改正確了:

#include

void main ( )

for(j=2;j

if(j==i) printf("%d ",i); //printf應該放到迴圈外,並且只有當j==i的時候i才是素數

}printf("\n");}

求c語言程式求1000以內的素數

include stdio.h include math.h include stdlib.h int prime int n return flag int main return 0 c語言,求1000以內素數的和!首先 你2就沒有算進去 n 2的時候 x也是2 迴圈進不去 flag是0 就不加...

用c 編寫求1000以內的素數及所有素數的個數

include int main cout 3 for int i 2 i n 2 i if n i 0 break if i 1 n 2 cout 判斷素數,是學習c c 必接觸的一個演算法。answerintheinternet.cpp 定義控制檯應用程式的入口點。include stdafx....

C或C求兩個陣列相同元素個數

方法一 查詢一個陣列裡面最小和次小的兩個元素,可採用先按從小到大排序,然後,取出前兩位數,得到最小和次小。但這種方法時間複雜度較高。方法二 先假定陣列的前兩位中的較小的是最小,較大的是次小迴圈檢查其餘的元素,若新元素小於最小,則,最小變為次小,新元素成為最小否則,再判斷新元素是否小於次小,是,則新元...