Cod sursa(job #2268025)
| Utilizator | Data | 24 octombrie 2018 14:19:56 | |
|---|---|---|---|
| Problema | Fractii | Scor | 0 |
| Compilator | c-64 | Status | done |
| Runda | Arhiva de probleme | Marime | 0.62 kb |
#include <stdio.h>
#include <stdlib.h>
int euler(int n){
int d,s;
d=2;
s=n;
while (d*d<n){
if (n%d==0){
s=s*(d-1);
s/=d;
}
while (n%d==0){
n/=d;
}
d++;
}
if (n%d==0){
s=s*(d-1);
s/=d;
}
return s;
}
int main()
{
FILE *fin=fopen("fractii.in","r");
FILE *fout=fopen("fractii.out","w");
int n;
fscanf(fin,"%d",&n);
int i,s;
s=n+1;
for (i=2;i<=n;i++){
printf("%d\n",euler(i));
s+=euler(i);
}
fprintf(fout,"%d",s);
return 0;
}
