Cod sursa(job #1603746)
Utilizator | Data | 17 februarie 2016 19:11:01 | |
---|---|---|---|
Problema | Sum | Scor | 0 |
Compilator | fpc | Status | done |
Runda | Arhiva de probleme | Marime | 0.49 kb |
var i,j,n,x:longint;
sum:int64;
function cmmdc(a,b:longint):longint;
begin
if a=b then cmmdc:=a
else if a>b then cmmdc:=cmmdc(a-b,b)
else cmmdc:=cmmdc(a,b-a);
end;
begin
assign(input,'sum.in'); reset(input);
readln(input,n);
for j:=1 to n do
begin
readln(input,x);
sum:=1;
for i:=2 to x*2 do
if cmmdc(i,x)=1 then sum:=sum+i;
writeln(sum);
end;
assign(output,'sum.out'); rewrite(output);
close(input); close(output);
end.