/******************************************************************
Prime number Finder v1.0 by Allen Lam
Uses array to store data, range is preset in compile-time
Nov 2000
******************************************************************/
#include <stdio.h>
#include <math.h>
const unsigned int max=1000;
char prime[max+1];
int main(){
unsigned int i, test_limit, x, count = 0;
puts("*** Prime Number Finder v1.0 by Allen Lam ***\n");
for (i=0; i<=max; i++) prime[i] = 0;
prime[2] = 1; prime[3] = 1;
for (x=4; x<=max; x++){
test_limit = sqrt(x);
for(i=2; i<=test_limit; i++){
if (prime[i]) if (x % i==0) break;
if (i==test_limit){prime[x] = 1; count++;}
}//break out here
}
for (i=0; i<=max; i++) if (prime[i]) printf("%8d", i);
printf("\n\n%d prime numbers are found from 1 to %d.\n", count+2, max);
fflush(stdin);
getchar();
return 0;
}
back