Product of divisors: Difference between revisions

Content added Content deleted
(→‎{{header|ALGOL 68}}: Added additional translation of the Fortran "sieve" based sample)
(→‎{{header|ALGOL W}}: Added additional sample: translation of the Fortran "sieve" based sample)
Line 163: Line 163:


=={{header|ALGOL W}}==
=={{header|ALGOL W}}==
{{Trans|Fortran}}
<lang algolw>begin % product of divisors - transaltion of the Fortran sample %
integer array divis ( 1 :: 50 );
for i := 1 until 50 do divis( i ) := 1;
for i := 1 until 50 do begin
for j := i step i until 50 do divis( j ) := divis( j ) * i
end for_i;
for i := 1 until 50 do begin
writeon( i_w := 10, s_w := 0, divis( i ) );
if i rem 5 = 0 then write()
end for_i
end.</lang>
{{out}}
<pre>
1 2 3 8 5
36 7 64 27 100
11 1728 13 196 225
1024 17 5832 19 8000
441 484 23 331776 125
676 729 21952 29 810000
31 32768 1089 1156 1225
10077696 37 1444 1521 2560000
41 3111696 43 85184 91125
2116 47 254803968 343 125000
</pre>

{{Trans|C++}}
{{Trans|C++}}
<lang algolw>begin % find the product of the divisors of the first 100 positive integers %
<lang algolw>begin % find the product of the divisors of the first 100 positive integers %
Line 223: Line 249:
2116 47 254803968 343 125000
2116 47 254803968 343 125000
</pre>
</pre>

=={{header|APL}}==
=={{header|APL}}==
<lang APL>divprod ← ×/(⍸0=⍳|⊢)
<lang APL>divprod ← ×/(⍸0=⍳|⊢)