home *** CD-ROM | disk | FTP | other *** search
/ Turbo Toolbox / Turbo_Toolbox.iso / 1987 / 02 / sieve.c < prev    next >
Encoding:
C/C++ Source or Header  |  1979-12-31  |  792 b   |  41 lines

  1. /*
  2.  
  3.   SIEVE.C
  4.   Sieb der Erathostenes: testet Schleifen und Array-Zugriffe
  5.                          Auf Additionen reduzierter Algorithmus !!!
  6.  
  7. */
  8.  
  9. #include <stdio.h>
  10.  
  11. #define SIZE 8190
  12. #define FALSE 0
  13. #define TRUE 1
  14. #define NTIMES 10
  15.  
  16. char flag[SIZE + 1];
  17.  
  18. main()
  19. {
  20.     int i, j, k, count, prime;
  21.  
  22.     printf("%d iterations: ",NTIMES);
  23.  
  24.     for(i = 1; i <= NTIMES; i++) {
  25.         count = 0;
  26.         for(j = 0; j <= SIZE; j++)
  27.             flag[j] = FALSE;
  28.         for(j = 0; j <= SIZE; j++){
  29.             if (flag[j]) {
  30.                 prime = j + j + 3;
  31.                 for(k = j + prime; k <= SIZE; k += prime)
  32.                     flag[k] = FALSE;
  33.                 count++;
  34.             }
  35.         }
  36.     }
  37.     printf("Number of primes : %d",count);
  38. }
  39.  
  40.  
  41.