/* ECP: FILEname=fig3_28.c */ /* 1*/ /* Find Next Prime After StartingNumber */ /* 2*/ #include /* 3*/ main( void ) /* 4*/ { /* 5*/ unsigned long int Divisor, PossiblePrime; /* 6*/ printf( "Enter the starting number: " ); /* 7*/ scanf( "%lu", &PossiblePrime ); /* 8*/ if( PossiblePrime <= 2 ) /* 9*/ PossiblePrime = 2; /*10*/ else /*11*/ if( PossiblePrime != 3 ) /*12*/ { /*13*/ if( PossiblePrime % 2 == 0 ) /*14*/ PossiblePrime++; /* Need An Odd Number */ /*15*/ /*16*/ for( ; ; PossiblePrime += 2 ) /*17*/ for( Divisor = 3; PossiblePrime % Divisor; Divisor += 2 ) /*18*/ if( Divisor * Divisor > PossiblePrime ) /*19*/ goto FoundPrime; /*20*/ } /*21*/ FoundPrime: /*22*/ printf( "Next largest prime is %lu\n", PossiblePrime ); /*23*/ }