Count in factors: Difference between revisions

→‎{{header|Euphoria}}: Euphoria example added
m (→‎{{header|Ruby}}: optparse provides -h option, so use -h instead of -?.)
(→‎{{header|Euphoria}}: Euphoria example added)
Line 252:
writefln("%2d = %s", i, productStr(factorize(i))) ;
}</lang>
=={{header|Euphoria}}==
<lang euphoria>function factorize(integer n)
sequence result
integer k
if n = 1 then
return {1}
else
k = 2
result = {}
while n > 1 do
while remainder(n, k) = 0 do
result &= k
n /= k
end while
k += 1
end while
return result
end if
end function
 
sequence factors
for i = 1 to 22 do
printf(1, "%d: ", i)
factors = factorize(i)
for j = 1 to length(factors)-1 do
printf(1, "%d * ", factors[j])
end for
printf(1, "%d\n", factors[$])
end for</lang>
 
Output:
<pre>1: 1
2: 2
3: 3
4: 2 * 2
5: 5
6: 2 * 3
7: 7
8: 2 * 2 * 2
9: 3 * 3
10: 2 * 5
11: 11
12: 2 * 2 * 3
13: 13
14: 2 * 7
15: 3 * 5
16: 2 * 2 * 2 * 2
17: 17
18: 2 * 3 * 3
19: 19
20: 2 * 2 * 5
21: 3 * 7
22: 2 * 11
</pre>
 
=={{header|Go}}==
<lang go>package main
Anonymous user