Pagini recente » Cod sursa (job #1296780) | Cod sursa (job #269311) | Cod sursa (job #2121491) | Cod sursa (job #514546) | Cod sursa (job #187675)
Cod sursa(job #187675)
#include <stdio.h>
int n, nr;
void cit()
{
FILE *f=fopen("fractii.in", "r");
fscanf(f, "%d", &n);
fclose(f);
}
int prim(int nr1)
{
int i;
for (i=2; i<=nr1/2; i++)
if (!(nr1%i)) return 0;
return 1;
}
int d(int n)
{
int i, put, e=1, t, j;
if (prim(n)) return n-1;
for (i=2; i<=n; i++)
{
put=0;
if (!(n%i))
{
if (prim(i))
while (!(n%i))
{
put++;
n/=i;
}
t=1;
for (j=0; j<put-1; j++) t*=i;
e*=t*i-t;
}
}
return e;
}
void fct()
{
int i;
nr=1;
for (i=2; i<=n; i++)
{
nr+=2*d(i);
}
}
void tip()
{
FILE *f=fopen("fractii.out", "w");
fprintf(f, "%d\n", nr);
fclose(f);
}
int main()
{
cit();
fct();
tip();
return 0;
}