diff --git a/libc/getPrimeNumber.c b/libc/getPrimeNumber.c new file mode 100644 index 0000000..de23a1b --- /dev/null +++ b/libc/getPrimeNumber.c @@ -0,0 +1,37 @@ +#include +#include +#include + +int main(int argc, char *argv[]) +{ + if ( argc != 2 ){ + printf( "usage: ./getPrimeNumber [integer]\n"); + return 0; + } + else{ + + int limit= atoi(argv[1]); + int *primes, i, isPrime,count=2, number=3; + primes=(int*)malloc(2*sizeof(int)); + primes[0]=2; + primes[1]=3; + + while( count <= limit){ + isPrime=1; + for (i=0; ((primes[i] <= sqrt(number)) && (i < count)) ; i=i+1){ + if(number%primes[i] == 0){ + isPrime=0; + break; + } + } + if(isPrime){ + count++; + primes=realloc(primes,count*sizeof(int)); + primes[count -1]=number; + } + number+=2; + } + printf("%d\n",primes[count -1]); + } + return 0; +} \ No newline at end of file