あらゆるサイトからコピペしまくって高速に素数を求めるプログラムを作りました
まだ速くできるところがあれば教えてください
// main.c
#include <stdio.h>
#include <math.h>
void main(void)
{
int answer = 0;
long int i = 0, sosu_for_divide = 0, end_of_sosu_list = 0, num = 0, sosu[1000000] = {3};
printf("2\n");
for (num = 3; num <= 10000000; num += 2){
answer = 1;
for (i = 0;;i++){
if (sosu[i] <= sqrt(num)) { sosu_for_divide = sosu[i]; } else break; // 割る数が計算する数の平方根より大きかったらbreak
if (num % sosu_for_divide == 0) { answer = 0; break; } // 割り切れたらbreak
}
if (answer == 1) { printf("%li\n", num); end_of_sosu_list += 1; sosu[end_of_sosu_list] = num; }
}
}