Pagini recente » Cod sursa (job #882392) | Cod sursa (job #767594) | Cod sursa (job #1535564) | Cod sursa (job #1464544) | Cod sursa (job #2353791)
#include <stdio.h>
#include <stdlib.h>
void do_nothing(int null)
{}
int main()
{
int N;
FILE *read=fopen("ciur.in","r");
FILE *write=fopen("ciur.out","w");
int null;
null=fscanf(read,"%d",&N);
do_nothing(null);
int *marked=(int*)calloc(2000006,sizeof(int));
int number_of_primes=0;
if(N==1)
fprintf(write,"%d\n",0);
else
{
marked[2]=1;
number_of_primes++;
for(int i=2;i<=N;i++)
if(marked[i]==0)
{
number_of_primes++;
for(int j=i+i;j<=N;j++)
marked[j]=1;
}
}
fprintf(write,"%d\n",number_of_primes);
free(marked);
fclose(read);
fclose(write);
return 0;
}