Pagini recente » Cod sursa (job #1331772) | Cod sursa (job #1765348) | Cod sursa (job #2527751) | Cod sursa (job #2883200) | Cod sursa (job #16561)
Cod sursa(job #16561)
#include<stdio.h>
FILE *f=fopen("fractii.in", "r"), *g=fopen("fractii.out", "w");
long n;
int prim(long k)
{
long d;
d=2;
while(d*d<=k)
{
if(k%d==0)
return 0;
d++;
}
return 1;
}
int main()
{
long s, rez, i, j, m;
float q, p;
long v[12000];
int sem;
fscanf(f, "%ld", &n);
fclose(f);
s=0;
v[1]=2;
q=2;
for(i=3; i<=n; i++)
if(prim(i)==1)
v[q++]=i;
m=q-1;
s=0;
for(i=2; i<=n; i++)
{
sem=1;
p=i;
for(j=1; j<=m && sem; j++)
{
if(v[j]>i)
sem=0;
else
{
if(i%v[j]==0)
{
q=1-(float)1/v[j];
p=p*q;
}
}
}
s=s+2*p;
}
rez=s+1;
fprintf(g, "%ld", rez);
fclose(f);
return 0;
}