Multiplication tables: Difference between revisions

→‎{{header|Python}}: Generalised column alignment for tables of other orders
(→‎{{header|Python}}: Generalised column alignment for tables of other orders)
Line 4,140:
without redundant entries beneath
the diagonal of squares.'''
 
# colWidth :: Int
colWidth = len(str(n * n))
 
# pad :: String -> String
def pad(s):
return s.rjust(colWidth, ' ')
 
xs = enumFromTo(1)(n)
return unlines([
pad(str(y).rjust(2, ' ') + ': ') + unwords([
pad(str(x * y).rjust(3, ' ') if x >= y
else pad(' ') for x in xs
]) for y in xs
])
Line 4,183 ⟶ 4,191:
main()</lang>
{{Out}}
<pre> 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|R}}==
9,659

edits