Pagini recente » Cod sursa (job #729773) | Cod sursa (job #2643910) | Cod sursa (job #2478251) | Cod sursa (job #2974213) | Cod sursa (job #561222)
Cod sursa(job #561222)
#include <stdio.h>
#include <stdlib.h>
int N;
void ciur(int N)
{
char *sieve;
sieve = (char *) calloc(N+1, sizeof(char));
int i, j, count = 0;
for (i=0; i<=N; ++i)
sieve[i] = 0;
sieve[0] = sieve[1] = 1;
for (i=2; i<=N; ++i)
if (!sieve[i]) {
count++;
for (j=2*i; j<=N; j+=i)
sieve[j] = 1;
}
free(sieve);
FILE *fout = fopen("ciur.out", "w");
fprintf(fout, "%d\n", count);
fclose(fout);
}
int main()
{
FILE *fin = fopen("ciur.in", "r");
fscanf(fin, "%d", &N);
fclose(fin);
ciur(N);
return 0;
}