Hi:
Ran into another problem in studying my programing. This program is designed to compute a number of primes. Instead of computing any primes, however, it throws a segmentation block. I suspect that it may because I am returning 1 and 0 instead of true and false, but I did that because when I return true and false I get these errors.
ThousandthPrime.c:10:10: error: ‘false’ undeclared (first use in this function)
ThousandthPrime.c:10:10: note: each undeclared identifier is reported only once for each function it appears in
ThousandthPrime.c:20:9: error: ‘true’ undeclared (first use in this functio
Code://ThousandthPrime: Calculate the thousandthprime. #include <stdio.h> //primality function which will determine if a number is prime. long Primality(long n) { //check to see if the number is a multiple of 2(ie the number is even) and is not equal to 2 if(n % 0 && n != 2) { return 0; //if the number is even or equal to 2, return false and do not count these numbers }//end if //once we determine that a number is not even or equal to 2, we can check the odds. for(long i = 3; i * i <= n; i += 2) { if(n % i == 0) { return 0; }//end if }//end for return 1; }//end function primality int main() { long primes = 0;// counts the number of primes for us. long n = 1; //variable that we will run through primality function long y = 0; //variable input by the user to tell how many primes to find. printf("Please enter a number(n), and the program will return with the \"nth\" number of primes"); scanf("%ld", y); //while loop calls the primality functions until "y" primes are found while(primes < y) { n++; Primality(n); if(Primality(n)) { printf("%ld", n); primes++; }//end if }//end while printf("I found %ld primes %ld is the \"nth\" prime", primes, n); }//end mainWhat am I doing wrong?Code:Please enter a number(n), and the program will return with the "nth" number of primes: 3 Segmentation fault (core dumped)



LinkBack URL
About LinkBacks




