すごくメモ帳

すごくほぼメモ帳ぐらいなブログ

素数を計算するプログラム

#include <math.h>
#include <stdio.h>

#define N 10000000

int main(void){
    static int array[N] = {};
    int i, j, k = 0, l = 0, tmp, s, flag;
    for(i = 2; l <= N; i++){
        flag = 1;
        j = 0;
        s = sqrt(i);
        while(tmp = array[j++]){
            if(tmp > s)
                break;
            else if (i % tmp == 0){
                flag = 0;
                break;
            }
        }
        if(flag){
            array[k++] = i;
            l++;
            printf("%d, ", i);
        }
    }
    printf("\b\b \n");
    return 0;
}