Mercurial > cgi-bin > hgwebdir.cgi > PR > Applications > SSR > SSR__Sieve__Bench
diff src/Application/SievePrints.c @ 0:8194b72c6c30
initial import
| author | hausers |
|---|---|
| date | Wed, 30 Nov 2011 16:56:25 +0100 |
| parents | |
| children |
line diff
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/src/Application/SievePrints.c Wed Nov 30 16:56:25 2011 +0100 1.3 @@ -0,0 +1,25 @@ 1.4 +#include <stdio.h> 1.5 +#include <stdlib.h> 1.6 +#include "SievePrints.h" 1.7 + 1.8 +void printArray (char* ar, int n) { 1.9 + int i; 1.10 + if (n > 1) printf("[%i,",ar[0]); 1.11 + if (n == 1) printf("[%i",ar[0]); 1.12 + for (i= 1; i<n-1; i++) printf("%i,",ar[i]); 1.13 + if (n > 1) printf("%i",ar[n-1]); 1.14 + if (n > 0) printf("]\n"); 1.15 +} 1.16 + 1.17 +void printPrimes (char* ar, int size, int offset) { 1.18 + int i; 1.19 + char* primeNumbers; 1.20 + int j= 0; 1.21 + int count= 0; 1.22 + for (i= 0; i<size; i++) if (ar[i] == 0) count++; 1.23 + primeNumbers= malloc(count*sizeof(*primeNumbers)); 1.24 + for (i= 0; i<size; i++) { 1.25 + if (ar[i] == 0) primeNumbers[j++]= i+offset; 1.26 + } 1.27 + printArray(primeNumbers,count); 1.28 +}
