Amicable pairs: Difference between revisions

Content deleted Content added
Boreal (talk | contribs)
Added XPL0 example.
Line 5,394:
12285 and 14595
17296 and 18416
</pre>
 
=={{header|XPL0}}==
<lang XPL0>func SumDiv(Num); \Return sum of proper divisors of Num
int Num, Div, Sum, Quot;
[Div:= 2;
Sum:= 0;
loop [Quot:= Num/Div;
if Div > Quot then quit;
if rem(0) = 0 then
[Sum:= Sum + Div;
if Div # Quot then Sum:= Sum + Quot;
];
Div:= Div+1;
];
return Sum+1;
];
 
def Limit = 20000;
int Tbl(Limit), N, M;
[for N:= 0 to Limit-1 do
Tbl(N):= SumDiv(N);
for N:= 1 to Limit-1 do
[M:= Tbl(N);
if M<Limit & N=Tbl(M) & M>N then
[IntOut(0, N); ChOut(0, 9\tab\);
IntOut(0, M); CrLf(0);
];
];
]</lang>
 
{{out}}
<pre>
220 284
1184 1210
2620 2924
5020 5564
6232 6368
10744 10856
12285 14595
17296 18416
</pre>