素数生成するだけのプログラムです。
なんか面白いのでメモメモ。
exeも置いときます。 → prime_gen.exe
コマンドラインで叩くと使えます。↓
prime_gen.exe 1000
ファイルに出力したければ
prime_gen.exe 1000 > output.txt
/************************************************************ prime gen.exe ************************************************************/ #include <iostream> #include <vector> int main(int argc, char* argv[]) { std::vector<unsigned long long int> prime_ls; unsigned long long int target; unsigned long long int distp = 3; prime_ls.push_back(2); if(argc < 2) { std::cout << "please input target" << std::endl; return 0; } target = atoi(argv[1]); unsigned long long int cnt = target - distp; for (; cnt > 0; cnt--) { for (unsigned long long int cmpp = 0; prime_ls.size() > cmpp; cmpp++) { if (distp % prime_ls[cmpp]) { if (prime_ls.size() - 1 == cmpp) { prime_ls.push_back(distp); break; } } else { break; } } distp++; } for (unsigned int cnt = 0; prime_ls.size() > cnt; cnt++) { std::cout << "{" << cnt + 1 << " " << prime_ls[cnt] << "}, "; } return 0; }