Cod sursa(job #1325036)
Utilizator | Data | 23 ianuarie 2015 09:42:14 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.48 kb |
#include<stdio.h>
bool a[2000001];
int main()
{
FILE *fin,*fout;
fin=fopen("ciur.in","r");
fout=fopen("ciur.out","w");
int n,counter=0;
fscanf(fin,"%d",&n);
a[1]=1;
for(int i=2;i<=n;i++)
{
if(a[i]==0)
for(int j=i*2;j<=n;j+=i)
a[j]=1;
}
for(int i=1;i<=n;i++)
if(a[i]==0)
{counter++;
fprintf(fout,"%d ",i);
}
fprintf(fout,"\n%d",counter);
}