Cod sursa(job #2515763)
Utilizator | Data | 29 decembrie 2019 15:24:56 | |
---|---|---|---|
Problema | Fractii | Scor | 100 |
Compilator | fpc | Status | done |
Runda | Arhiva de probleme | Marime | 0.6 kb |
program fractii;
var
n, i,j, z,x,k,m: longint;
in_f, out_f: text;
num:real;
phi: array[1..1000000] of real;
ok: boolean;
begin
assign(in_f, 'fractii.in');
assign(out_f, 'fractii.out');
reset(in_f);
readln(in_f, n);
for i:=1 to n do
phi[i]:=i;
for i:=2 to n do
if (phi[i]=i) then
begin
j:=i;
while j<=n do
begin
phi[j] := phi[j]/i;
phi[j] := phi[j]*(i-1);
j:=j+i;
end;
end;
for i := 1 to n do num:=num+phi[i];
num:=num*2-1;
rewrite(out_f);
write(out_f, round(num));
close(out_f);
end.