篩選法查詢1000以內的素數c++程式碼例項及執行結果
c++程式碼
#include <iostream> #include<iomanip> #define N 1000 using namespace std; int main() { int array[N];//陣列array標記是否為素數 int n=0; for(int i=0;i<N;i++)//所有元素初始化為1 array[i]=1; for(int j=2;j<N;j++) { if(array[j]!=0) for(int k=j+j;k<N;) { if(k%j==0) array[k]=0; k=k+j; } } cout<<N<<"以內的素數為:"<<endl; for(int i=2;i<N;i++) if(array[i]!=0) { n++; cout<<setw(4)<<i; if(n%10==0) cout<<endl; } return 0; }
執行結果
相關推薦
篩選法查詢1000以內的素數c++程式碼例項及執行結果
c++程式碼 #include <iostream> #include<iomanip> #define N 1000 using namespace std; int main() { int array[N];//陣列array標記是否
Opencv檢測交通中紅色標識輪廓c++程式碼例項及執行結果
環境vs2013+opencv2.4.9 c++程式碼 #include<opencv2/opencv.hpp> #include<iostream> #define PI 3.1415926 using namespace std; using
opencv讀取彩色/灰度圖片畫素值並存儲在本地檔案中c++程式碼例項及執行結果
c++程式碼彩色圖片#include<opencv2/opencv.hpp> #include<fstream> using namespace std; using namespace cv; int main(int argc, char* ar
交通標識牌檢測及識別c++程式碼例項及執行結果 (可自行在網上下載圖片測試)
執行環境:vs2013+opencv2.4.9+win10 資料來源於GTSRB 效果不是很理想(預處理方法、檢測用的rgb2hsv、圓度檢測,、引數,總之改變程式中很多東西可以嘗試提高準確率),但檢測及識別的道路是打通了 c++程式碼 #include<iostr
刪除特定位置前面的字串c++程式碼例項及執行結果
原始字串樣式 c++程式碼 #include<iostream> #include<string> #include<vector> #include<fstream> using namespace std; int
篩選法查詢100以內的素數
解析: 篩選法:是指從小到大篩去一個已知素數的所有倍數。例如:根據2,我們篩選去4,6,8,....,98,100等數,然後根據3,我們可以篩選9,15,...99等數(注意此時6、12等數早就被篩去了),由於4被篩去了,下一個用於篩選的素數是5,以此類推,最後剩餘的就是100以內的素數。
八皇后問題c++程式碼遞歸回溯例項及執行結果
八皇后問題,是一個古老而著名的問題,是回溯演算法的典型案例。該問題是國際西洋棋棋手馬克斯·貝瑟爾於1848年提出:在8×8格的國際象棋上擺放八個皇后,使其不能互相攻擊,即任意兩個皇后都不能處於同一行、同一列或同一斜線上,問有多少種擺法 具體分析可見程式設計師面試寶典 c+
【C語言】 利用篩選法求100以內的素數
演算法思路: 原理很簡單,就是當i是質(素)數的時候,i的所有的倍數必然是合數。如果i已經被判斷不是質數了,那麼再找到i後面的質數來把這個質數的倍數篩掉。 程式碼如下: //C語言 篩選法求100以內的素數 //原理很簡單,就是當i是質(素)數的時候,i的所有的倍數必然是合數。如果i已經
Eratosthenes“埃氏篩法”求1000以內的素數C++
“埃氏篩法”是一種高效的求N以內素數的演算法,時間複雜度為O(nloglogn),求1000以內素數的“埃氏篩法”程式碼實現如下: #include<cstdio> #include&l
python用遞迴篩選法求N以內的孿生質數(孿生素數)--附氣泡排序和插入排序練習
本人最近讀完一本書《質數的孤獨》,裡面講到孿生質數,就想查一下孿生質數的分佈情況。其中主要用到了計算質數(素數)的方法,搜了一下,排名前幾的都是用for迴圈來做的,感覺略微麻煩了一些,在比較一些還是覺得用遞迴篩選法來解決這個問題。 新建List,然後從第0位開始,如果後面的能被這個數整除,則從陣
java用遞迴篩選法求N以內的孿生質數(孿生素數)--附氣泡排序和插入排序練習
本人最近讀完一本書《質數的孤獨》,裡面講到孿生質數,就想查一下孿生質數的分佈情況。其中主要用到了計算質數(素數)的方法,搜了一下,排名前幾的都是用for迴圈來做的,感覺略微麻煩了一些,在比較一些還是覺得用遞迴篩選法來解決這個問題。 新建List<Integer>,然後從第0位開始,如
java用遞迴篩選法求N以內的孿生質數(孿生素數)
本人最近讀完一本書《質數的孤獨》,裡面講到孿生質數,就想查一下孿生質數的分佈情況。其中主要用到了計算質數(素數)的方法,搜了一下,排名前幾的都是用for迴圈來做的,感覺略微麻煩了一些,在比較一些還是覺得用遞迴篩選法來解決這個問題。 新建List<Integer>
用篩選法求100以內的素數問題
#include<stdio.h> #include<math.h> int main() { int i,j,n,a[101]; for(i=1;i<=100;i++)/*a[0]不用,只用a[1]到a[100]*/
用篩選法求100以內的素數
思路:1:先對1到100進行賦值,為了方便起見,我們可以讓a[1]=1;a[2]=2;...;a[100]=100;即a[i]=i。為此我們需要開闢101個空間(因為a[0]不使用),用迴圈對a[1]~a[100]進行賦值。2:判斷一個數是否是素數,只用判斷它除了1和它本身以
groovy使用stream語法遞迴篩選法求N以內的質數(素數)--附氣泡排序和插入排序練習
本人最近讀完一本書《質數的孤獨》,裡面講到孿生質數,就想查一下孿生質數的分佈情況。其中主要用到了計算質數(素數)的方法,搜了一下,
python用遞迴篩選法求N以內的孿生質數(孿生素數)
本人最近讀完一本書《質數的孤獨》,裡面講到孿生質數,就想查一下孿生質數的分佈情況。其中主要用到了計算質數(素數)的方法,搜了一下,
資料結構與演算法 二分法查詢【Python與C】的實現
程式碼如下: Python: def ErFen(List ,Number ,Len): left = 0 high = Len - 1 while left <= high: mid = (left + high)//2
素數篩選法,快速獲取素數序列
今天,學習了素數求取的方法,感覺很棒,拿來分享一下。首先,對比一下兩種方法:普通求取素數的方法和基於篩選法的素數求取方法。 -普通方法求取素數 普通方法求取素數是根據素數的定義來判斷一個數N是否為素數(只有1和它本身能夠整除自己)。因此,該方法一般方式是測試
Python 求1000以內素數
先構造從3開始的奇數數列def _odd_iter(): n=1 while True: n=n+2 yield n判斷函式def _not_divisible(n): return lambda x: x
Python程式-輸出1000以內素數
問題簡述:輸出1000以內素數,同時輸出素數的序數。 程式說明:編寫一個函式is_prime(n),用於判斷n是否為素數,使用該函式對1-1000的整數進行素性判定並且輸出結果。這個程式計算時間上不是最好的,但是邏輯簡單。函式is_prime(n)採用試除法判定一個數是否為