Pagini recente » Cod sursa (job #1773988) | Cod sursa (job #1506599) | Cod sursa (job #1587615) | Cod sursa (job #476658) | Cod sursa (job #28482)
Cod sursa(job #28482)
#include<fstream.h>
int e[1000000],n;
float pr[1000000];
long long int s=1;
long double r;
int main()
{
int i,j;
ifstream f("fractii.in");
f>>n;
f.close();
for(i=1;i<=n;i++)
{
e[i]=1;
pr[i]=1;
}
for(i=2;i<=n/2;i++)
if(e[i]==1)
for(j=2;j*i<=n;j++)
e[i*j]=0;
for(i=2;i<=n;i++)
{
if(e[i]==1)
{
pr[i]=i-1;
for(j=2;j*i<=n;j++)
{
pr[i*j]*=i-1;
pr[i*j]/=i;
}
r=pr[i];
}
else
r=(long double)(pr[i]*i);
s+=(long long int)(2*r);
}
ofstream g("fractii.out");
g<<s<<"\n";
g.close();
return 0;
}