Pagini recente » Cod sursa (job #2181522) | Cod sursa (job #2923402) | Cod sursa (job #1362841) | Cod sursa (job #1445737) | Cod sursa (job #23413)
Cod sursa(job #23413)
#include<stdio.h>
#include<math.h>
#define MAXSIZE 10000001
int n;
int citire()
{
FILE *f=fopen("fractii.in","r");
fscanf(f,"%d",&n);
fclose(f);
return 1;
}
int p[MAXSIZE];
int numar(int q) {
int i, j, nr = 0,t=1;
for(i=2;i<=n;i++) {p[i]=(i%2==0&&q%2==0); }
if(q%2==0) t=2;
for(i=2+t-1; i<=n; i+=t)
{
if(p[i]==0)
{
if(q%i==0||i%q==0)
for(j=i; j<=n; j+=i) p[j]=1;
else nr++;
}
}
return nr;
}
int main(void)
{
int i,nr=0;
FILE *f;
citire();
nr=2*n-1;
for(i=2;i<=n;i++) nr+=numar(i);
f=fopen("fractii.out","w");
fprintf(f,"%d\n",nr);
fclose(f);
return 0;
}