home *** CD-ROM | disk | FTP | other *** search
/ Power-Programmierung / CD2.mdf / c / compiler / miracl / sieve.c < prev    next >
C/C++ Source or Header  |  1992-05-25  |  537b  |  38 lines

  1. #include <stdio.h>
  2. #include <system.h>
  3.  
  4. void main();
  5.  
  6. #define ITER    250
  7. #define SIZE    250
  8.  
  9.  
  10. void main ()
  11.     {
  12.     char flags[256];
  13.     int i, k, iter, count;
  14.  
  15.     printf ("%d iterations\n", ITER);
  16.  
  17.     for( iter = 1; iter <= ITER; iter++ )
  18.         {
  19.         count = 0;
  20.         for( i = 0; i <= SIZE; i++)
  21.             flags[i] = 0;
  22.  
  23.         for( i = 2; i <= SIZE; i++ )
  24.  
  25.             if ( flags[i]==0 )    /* found a prime */
  26.                 {
  27.                 count++;
  28.  
  29.                 for ( k = i + i; k <= SIZE; k += i )
  30.                     flags[k] = 1;
  31.                 }
  32.  
  33.         }
  34.  
  35.     printf ("%d primes\n", count);
  36.     exit(0);
  37.     }
  38.