Pagini recente » Cod sursa (job #2503779) | Cod sursa (job #2754636) | Cod sursa (job #1097394) | Cod sursa (job #471842) | Cod sursa (job #23418)
Cod sursa(job #23418)
#include<stdio.h>
#include<math.h>
#define MAXSIZE 1000001
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;
for(i=2;i<=n;i++) {p[i]=(i%2==0&&q%2==0); }
t=1+(q%2==0);
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;
}