Pagini recente » Cod sursa (job #1388204) | Cod sursa (job #1829767)
/*
Dandu-se un numar natural N, sa se determine numarul numerelor prime mai mici sau egale cu N.
Date de intrare: Fisierul de intrare ciur.in contine o singura linie pe care se afla numarul N.
Date de iesire: In fisierul ciur.out se va scrie pe prima linie raspunsul cerut
*/
#include <stdlib.h>
#include <stdio.h>
int numerePrime(int N)
{
int n=0, i, j, k;
char *prime;
prime = calloc(N+1, sizeof(char));
for(i=2; i<=N; i++)
{
if(prime[i] == 0)
{
k=i;
n++;
for(j=k*k; j<=N; j+=k)
prime[j]=1;
}
}
return n;
}
int main()
{
int N;
freopen("ciur.in", "r", stdin);
scanf("%d", &N);
freopen("ciur.out", "w", stdout);
printf("%d", numerePrime(N));
return 0;
}