home *** CD-ROM | disk | FTP | other *** search
/ rtsi.com / 2014.01.www.rtsi.com.tar / www.rtsi.com / OS9 / BENCHMARKS / prime.c < prev    next >
C/C++ Source or Header  |  2009-11-06  |  823b  |  43 lines

  1. /*  byte prime bench  */
  2. /* normal version, 10.7 sec on 6809, 12.1 sec on 68008 */
  3.  
  4. #include <stdio.h>
  5.  
  6. #define TRUE 1
  7. #define FALSE 0
  8. #define SIZE 8190
  9. #define SIZEPL 8191
  10. #define LOOPS 100   /* repeats for timing */
  11.  
  12.  
  13. char  flags[SIZEPL];
  14.  
  15. main()
  16.    {
  17.    int   i, prime, k, count, iter;
  18.  
  19.    printf("%d iterations\n", LOOPS);
  20.    for (iter = 1; iter < LOOPS; iter++)
  21.       {
  22.       count = 0;
  23.       for (i = 0; i <= SIZE; i++)
  24.          flags[i] = TRUE;
  25.       for (i = 0; i <= SIZE; i++)
  26.          {
  27.          if (flags[i])
  28.             {
  29.             prime = i + i + 3;
  30.             k = i + prime;
  31.             while (k <= SIZE)
  32.                {
  33.                flags[k] = FALSE;
  34.                k += prime;
  35.                }
  36.             count += 1;
  37.             }
  38.          }
  39.       }
  40.    printf("%d primes\n", count);
  41.    exit(0);
  42.    }
  43.