Pagini recente » Profil moga_florian | Istoria paginii runda/tt | Istoria paginii runda/pregatire_spartanica_sh | Autentificare | Cod sursa (job #384489)
Cod sursa(job #384489)
#include<stdio.h>
#include<stdlib.h>
#define SIZE 2000000
char x[SIZE];
int main()
{int n,nr=0;
freopen("ciur.in","r",stdin);
freopen("ciur.out","w",stdout);
scanf("%d",&n); // citeste n
for(int i=1; i<=n ;i++) x[i] = '1'; // initializarea vectorului de flaguri
x[1] = '0'; // 1 nu e numar prim
for(int i=2;i<=n;i++)
{ if (x[i] == '1') //verifica daca i este prim
for(int j=i+i;j<=n;j+=i) x[j] = '0'; // daca i este prim, marcheaza in vectorul de flaguri toti multiplii lui i ca fiind neprimi
}
for(int i=1; i<=n ;i++)
{if (x[i]=='1')
nr++;
}
printf("%d ", nr); //afisare
fclose(stdin);
fclose(stdout);
return 0;
}