Pagini recente » Cod sursa (job #1206526) | Cod sursa (job #1206523) | Monitorul de evaluare | Cod sursa (job #1580863) | Cod sursa (job #1153252)
#include<stdio.h>
#include<math.h>
int ciur_erathostene (char *arr, int n)
{
int i,j,count;
count = n-2+1;
for (i = 2 ; i <= n ; ++i)
{
arr[i] = 1;
}
for (i = 2 ; i <= (int)sqrt(n) ; ++i)
{
if (arr[i])
{
for (j = i+i ; j <= n ; j+=i)
{
if(arr[j])
{
arr[j] = 0;
--count;
}
}
}
}
return count;
}
int main()
{
FILE *fp = NULL;
char prim[2000001];
int num;
fp = fopen("ciur.in","r");
fscanf(fp,"%d",&num);
fclose(fp);
num = ciur_erathostene(prim,num);
fp = fopen("ciur.out","w");
fprintf(fp,"%d\n",num);
fclose(fp);
return 0;
}