Multiplication tables: Difference between revisions

Content added Content deleted
(→‎{{header|Groovy}}: new solution)
Line 1,115:
}
</lang>
 
=={{header|Groovy}}==
Solution:
<lang groovy>def printMultTable = { size = 12 ->
assert size > 1
// factor1 line
print ' |'; (1..size).each { f1 -> printf('%4d', f1) }; println()
// dividing line
print '--+'; (1..size).each { printf('----', it) }; println()
// factor2 result lines
(1..size).each { f2 ->
printf('%2d|', f2)
(1..<f2).each{ print ' ' }
(f2..size).each{ f1 -> printf('%4d', f1*f2) }
println ''
}
}
 
printMultTable()</lang>
 
Output:
<pre> | 1 2 3 4 5 6 7 8 9 10 11 12
--+------------------------------------------------
1| 1 2 3 4 5 6 7 8 9 10 11 12
2| 4 6 8 10 12 14 16 18 20 22 24
3| 9 12 15 18 21 24 27 30 33 36
4| 16 20 24 28 32 36 40 44 48
5| 25 30 35 40 45 50 55 60
6| 36 42 48 54 60 66 72
7| 49 56 63 70 77 84
8| 64 72 80 88 96
9| 81 90 99 108
10| 100 110 120
11| 121 132
12| 144</pre>
 
=={{header|Haskell}}==