Multiplication tables: Difference between revisions
Content added Content deleted
(→{{header|APL}}: Add implementation.) |
(→{{header|BASIC}}: Consolidate BASIC implementations under one section) |
||
Line 1,450: | Line 1,450: | ||
=={{header|BASIC}}== |
=={{header|BASIC}}== |
||
{{works with|QBasic}} |
|||
==={{header|Applesoft BASIC}}=== |
|||
<lang ApplesoftBasic>100 M = 12 |
|||
110 DEF FN T(X) = X * 3 + (X < 4) * (4 - X) + (X > 10) * (X - 10) - 1 |
|||
120 FOR N = -1 TO M |
|||
130 IF NOT N THEN PRINT CHR$(13) TAB(5); : FOR J = 5 TO FN T(M + 1) - 2 : PRINT "-"; : NEXT J, N |
|||
140 I = ABS(N) |
|||
150 IF N > 0 THEN PRINT CHR$(13) MID$(" ", 1, I < 10) I" !"; |
|||
160 FOR J = I TO M |
|||
170 V$ = STR$(I * J) |
|||
180 PRINT TAB(FN T(J)) MID$(" ", 1, 3 - LEN(V$) - (J < 4)) V$; |
|||
190 NEXT J, N</lang> |
|||
==={{header|BASIC256}}=== |
|||
<lang freebasic>print " X| 1 2 3 4 5 6 7 8 9 10 11 12" |
|||
print "---+------------------------------------------------" |
|||
for i = 1 to 12 |
|||
nums$ = right(" " + string(i), 3) + "|" |
|||
for j = 1 to 12 |
|||
if i <= j then |
|||
if j >= 1 then |
|||
nums$ += left(" ", (4 - length(string(i * j)))) |
|||
end if |
|||
nums$ += string(i * j) |
|||
else |
|||
nums$ += " " |
|||
end if |
|||
next j |
|||
print nums$ |
|||
next i</lang> |
|||
==={{header|BBC BASIC}}=== |
|||
BBC BASIC automatically right-justifies numeric output. |
|||
<lang bbcbasic> @% = 5 : REM Set column width |
|||
FOR row% = 1 TO 12 |
|||
PRINT row% TAB(row% * @%) ; |
|||
FOR col% = row% TO 12 |
|||
PRINT row% * col% ; |
|||
NEXT col% |
|||
PRINT |
|||
NEXT row%</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|FreeBASIC}}=== |
|||
<lang freebasic> |
|||
' FB 1.05.0 Win64 |
|||
Print " X|"; |
|||
For i As Integer = 1 To 12 |
|||
Print Using "####"; i; |
|||
Next |
|||
Print |
|||
Print "---+"; String(48, "-") |
|||
For i As Integer = 1 To 12 |
|||
Print Using "###"; i; |
|||
Print"|"; Spc(4 * (i - 1)); |
|||
For j As Integer = i To 12 |
|||
Print Using "####"; i * j; |
|||
Next j |
|||
Print |
|||
Next i |
|||
Print |
|||
Print "Press any key to quit" |
|||
Sleep</lang> |
|||
{{out}} |
|||
<pre> |
|||
X| 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|FutureBasic}}=== |
|||
<lang> |
|||
long i, j |
|||
window 1, @"Multiplication Table", (0,0,420,220) |
|||
print " |"; |
|||
for i = 1 to 12 |
|||
print using "####"; i; |
|||
next |
|||
print :print "---+"; string$(48, "-") |
|||
for i = 1 to 12 |
|||
print using "###"; i; |
|||
print"|"; spc(4 * (i - 1)); |
|||
for j = i to 12 |
|||
print using "####"; i * j; |
|||
next |
|||
print |
|||
next |
|||
HandleEvents |
|||
</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|GW-BASIC}}=== |
|||
{{trans|Modula-2}} |
|||
{{works with|PC-BASIC|any}} |
|||
<lang qbasic> |
|||
10 ' Multiplication Tables |
|||
20 LET N% = 12 |
|||
30 FOR J% = 1 TO N% - 1 |
|||
40 PRINT USING "###"; J%; |
|||
50 PRINT " "; |
|||
60 NEXT J% |
|||
70 PRINT USING "###"; N% |
|||
80 FOR J% = 0 TO N% - 1 |
|||
90 PRINT "----"; |
|||
100 NEXT J% |
|||
110 PRINT "+" |
|||
120 FOR I% = 1 TO N% |
|||
130 FOR J% = 1 TO N% |
|||
140 IF J% < I% THEN PRINT " "; ELSE PRINT USING "###"; I% * J%;: PRINT " "; |
|||
150 NEXT J% |
|||
160 PRINT "| "; USING "##"; I% |
|||
170 NEXT I% |
|||
</lang> |
|||
{{out}} |
|||
<pre> |
|||
1 2 3 4 5 6 7 8 9 10 11 12 |
|||
------------------------------------------------+ |
|||
1 2 3 4 5 6 7 8 9 10 11 12 | 1 |
|||
4 6 8 10 12 14 16 18 20 22 24 | 2 |
|||
9 12 15 18 21 24 27 30 33 36 | 3 |
|||
16 20 24 28 32 36 40 44 48 | 4 |
|||
25 30 35 40 45 50 55 60 | 5 |
|||
36 42 48 54 60 66 72 | 6 |
|||
49 56 63 70 77 84 | 7 |
|||
64 72 80 88 96 | 8 |
|||
81 90 99 108 | 9 |
|||
100 110 120 | 10 |
|||
121 132 | 11 |
|||
144 | 12 |
|||
</pre> |
|||
==={{header|IS-BASIC}}=== |
|||
<lang IS-BASIC>100 PROGRAM "Multipli.bas" |
|||
110 TEXT 80 |
|||
120 PRINT TAB(7); |
|||
130 FOR I=1 TO 12 |
|||
140 PRINT USING " ###":I; |
|||
150 NEXT |
|||
160 PRINT AT 2,5:"----------------------------------------------------" |
|||
170 FOR I=1 TO 12 |
|||
180 PRINT USING "### |":I;:PRINT TAB(I*4+3); |
|||
190 FOR J=I TO 12 |
|||
200 PRINT USING " ###":I*J; |
|||
210 NEXT |
|||
220 PRINT |
|||
230 NEXT</lang> |
|||
==={{header|Liberty BASIC}}=== |
|||
<lang lb>Print " | 1 2 3 4 5 6 7 8 9 10 11 12" |
|||
Print "--+------------------------------------------------------------" |
|||
For i = 1 To 12 |
|||
nums$ = Right$(" " + str$(i), 2) + "|" |
|||
For ii = 1 To 12 |
|||
If i <= ii Then |
|||
If ii >= 1 Then |
|||
nums$ = nums$ + Left$(" ", (5 - Len(str$(i * ii)))) |
|||
End If |
|||
nums$ = nums$ + str$(i * ii) |
|||
Else |
|||
nums$ = nums$ + " " |
|||
End If |
|||
Next ii |
|||
Print nums$ |
|||
Next i</lang> |
|||
{{out}} |
|||
<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|Microsoft Small Basic}}=== |
|||
{{trans|Modula-2}} |
|||
<lang microsoftsmallbasic> |
|||
n = 12 |
|||
For j = 1 To n - 1 |
|||
TextWindow.CursorLeft = (j - 1) * 4 + (3 - Text.GetLength(j)) |
|||
TextWindow.Write(j) |
|||
TextWindow.Write(" ") |
|||
EndFor |
|||
TextWindow.CursorLeft = (n - 1) * 4 + (3 - Text.GetLength(n)) |
|||
TextWindow.Write(n) |
|||
TextWindow.WriteLine("") |
|||
For j = 0 To n - 1 |
|||
TextWindow.Write("----") |
|||
EndFor |
|||
TextWindow.WriteLine("+") |
|||
For i = 1 To n |
|||
For j = 1 To n |
|||
If j < i Then |
|||
TextWindow.Write(" ") |
|||
Else |
|||
TextWindow.CursorLeft = (j - 1) * 4 + (3 - Text.GetLength(i * j)) |
|||
TextWindow.Write(i * j) |
|||
TextWindow.Write(" ") |
|||
EndIf |
|||
EndFor |
|||
TextWindow.Write("| ") |
|||
TextWindow.CursorLeft = n * 4 + (4 - Text.GetLength(i)) |
|||
TextWindow.Write(i) |
|||
TextWindow.WriteLine("") |
|||
EndFor |
|||
</lang> |
|||
{{out}} |
|||
<pre> |
|||
1 2 3 4 5 6 7 8 9 10 11 12 |
|||
------------------------------------------------+ |
|||
1 2 3 4 5 6 7 8 9 10 11 12 | 1 |
|||
4 6 8 10 12 14 16 18 20 22 24 | 2 |
|||
9 12 15 18 21 24 27 30 33 36 | 3 |
|||
16 20 24 28 32 36 40 44 48 | 4 |
|||
25 30 35 40 45 50 55 60 | 5 |
|||
36 42 48 54 60 66 72 | 6 |
|||
49 56 63 70 77 84 | 7 |
|||
64 72 80 88 96 | 8 |
|||
81 90 99 108 | 9 |
|||
100 110 120 | 10 |
|||
121 132 | 11 |
|||
144 | 12 |
|||
</pre> |
|||
==={{header|PureBasic}}=== |
|||
<lang PureBasic>Procedure PrintMultiplicationTable(maxx, maxy) |
|||
sp = Len(Str(maxx*maxy)) + 1 |
|||
trenner$ = "+" |
|||
For l1 = 1 To maxx + 1 |
|||
For l2 = 1 To sp |
|||
trenner$ + "-" |
|||
Next |
|||
trenner$ + "+" |
|||
Next |
|||
header$ = "|" + RSet("x", sp) + "|" |
|||
For a = 1 To maxx |
|||
header$ + RSet(Str(a), sp) |
|||
header$ + "|" |
|||
Next |
|||
PrintN(trenner$) |
|||
PrintN(header$) |
|||
PrintN(trenner$) |
|||
For y = 1 To maxy |
|||
line$ = "|" + RSet(Str(y), sp) + "|" |
|||
For x = 1 To maxx |
|||
If x >= y |
|||
line$ + RSet(Str(x*y), sp) |
|||
Else |
|||
line$ + Space(sp) |
|||
EndIf |
|||
line$ + "|" |
|||
Next |
|||
PrintN(line$) |
|||
Next |
|||
PrintN(trenner$) |
|||
EndProcedure |
|||
OpenConsole() |
|||
PrintMultiplicationTable(12, 12) |
|||
Input()</lang> |
|||
Ouput similar to ALGOL 68 |
|||
==={{header|QBasic}}=== |
|||
<lang qbasic>CLS |
<lang qbasic>CLS |
||
Line 1,497: | Line 1,817: | ||
</pre> |
</pre> |
||
==={{header|Run BASIC}}=== |
|||
'''See also:''' [[#BBC BASIC|BBC BASIC]], [[#Liberty BASIC|Liberty BASIC]], [[#PureBasic|PureBasic]] |
|||
<lang Runbasic>html "<TABLE border=1 ><TR bgcolor=silver align=center><TD><TD>1<TD>2<TD>3<TD>4<TD>5<TD>6<TD>7<TD>8<TD>9<TD>10<TD>11<TD>12</td></TR>" |
|||
For i = 1 To 12 |
|||
html "<TR align=right><TD>";i;"</td>" |
|||
For ii = 1 To 12 |
|||
html "<td width=25>" |
|||
If ii >= i Then html i * ii |
|||
html "</td>" |
|||
Next ii |
|||
next i |
|||
html "</table>" |
|||
</lang>Output: |
|||
<TABLE border=1 ><TR bgcolor=silver align=center><TD><TD>1<TD>2<TD>3<TD>4<TD>5<TD>6<TD>7<TD>8<TD>9<TD>10<TD>11<TD>12</td></TR><TR align=right><TD>1</td><td width=25>1</td><td width=25>2</td><td width=25>3</td><td width=25>4</td><td width=25>5</td><td width=25>6</td><td width=25>7</td><td width=25>8</td><td width=25>9</td><td width=25>10</td><td width=25>11</td><td width=25>12</td><TR align=right><TD>2</td><td width=25></td><td width=25>4</td><td width=25>6</td><td width=25>8</td><td width=25>10</td><td width=25>12</td><td width=25>14</td><td width=25>16</td><td width=25>18</td><td width=25>20</td><td width=25>22</td><td width=25>24</td><TR align=right><TD>3</td><td width=25></td><td width=25></td><td width=25>9</td><td width=25>12</td><td width=25>15</td><td width=25>18</td><td width=25>21</td><td width=25>24</td><td width=25>27</td><td width=25>30</td><td width=25>33</td><td width=25>36</td><TR align=right><TD>4</td><td width=25></td><td width=25></td><td width=25></td><td width=25>16</td><td width=25>20</td><td width=25>24</td><td width=25>28</td><td width=25>32</td><td width=25>36</td><td width=25>40</td><td width=25>44</td><td width=25>48</td><TR align=right><TD>5</td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25>25</td><td width=25>30</td><td width=25>35</td><td width=25>40</td><td width=25>45</td><td width=25>50</td><td width=25>55</td><td width=25>60</td><TR align=right><TD>6</td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25>36</td><td width=25>42</td><td width=25>48</td><td width=25>54</td><td width=25>60</td><td width=25>66</td><td width=25>72</td><TR align=right><TD>7</td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25>49</td><td width=25>56</td><td width=25>63</td><td width=25>70</td><td width=25>77</td><td width=25>84</td><TR align=right><TD>8</td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25>64</td><td width=25>72</td><td width=25>80</td><td width=25>88</td><td width=25>96</td><TR align=right><TD>9</td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25>81</td><td width=25>90</td><td width=25>99</td><td width=25>108</td><TR align=right><TD>10</td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25>100</td><td width=25>110</td><td width=25>120</td><TR align=right><TD>11</td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25>121</td><td width=25>132</td><TR align=right><TD>12</td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25></td><td width=25>144</td></table> |
|||
==={{header| |
==={{header|True BASIC}}=== |
||
<lang qbasic>PRINT " X| 1 2 3 4 5 6 7 8 9 10 11 12" |
|||
<lang ApplesoftBasic>100 M = 12 |
|||
PRINT "---+------------------------------------------------" |
|||
110 DEF FN T(X) = X * 3 + (X < 4) * (4 - X) + (X > 10) * (X - 10) - 1 |
|||
120 FOR N = -1 TO M |
|||
130 IF NOT N THEN PRINT CHR$(13) TAB(5); : FOR J = 5 TO FN T(M + 1) - 2 : PRINT "-"; : NEXT J, N |
|||
140 I = ABS(N) |
|||
150 IF N > 0 THEN PRINT CHR$(13) MID$(" ", 1, I < 10) I" !"; |
|||
160 FOR J = I TO M |
|||
170 V$ = STR$(I * J) |
|||
180 PRINT TAB(FN T(J)) MID$(" ", 1, 3 - LEN(V$) - (J < 4)) V$; |
|||
190 NEXT J, N</lang> |
|||
FOR i = 1 TO 12 |
|||
==={{header|IS-BASIC}}=== |
|||
LET nums$ = (" " & STR$(i))[LEN(" " & STR$(i))-3+1:maxnum] & "|" |
|||
<lang IS-BASIC>100 PROGRAM "Multipli.bas" |
|||
FOR j = 1 TO 12 |
|||
110 TEXT 80 |
|||
IF i <= j THEN |
|||
120 PRINT TAB(7); |
|||
IF j >= 1 THEN LET nums$ = nums$ & (" ")[1:(4-LEN(STR$(i*j)))] |
|||
130 FOR I=1 TO 12 |
|||
LET nums$ = nums$ & STR$(i*j) |
|||
140 PRINT USING " ###":I; |
|||
ELSE |
|||
150 NEXT |
|||
LET nums$ = nums$ & " " |
|||
160 PRINT AT 2,5:"----------------------------------------------------" |
|||
END IF |
|||
170 FOR I=1 TO 12 |
|||
NEXT j |
|||
180 PRINT USING "### |":I;:PRINT TAB(I*4+3); |
|||
PRINT nums$ |
|||
NEXT i |
|||
200 PRINT USING " ###":I*J; |
|||
PRINT |
|||
210 NEXT |
|||
END</lang> |
|||
220 PRINT |
|||
230 NEXT</lang> |
|||
==={{header|uBasic/4tH}}=== |
|||
{{trans|BBC BASIC}} |
|||
<lang>For R = 1 To 12 |
|||
Print R;Tab(R * 5); |
|||
For C = R To 12 |
|||
Print Using "_____";R * C; |
|||
Next |
|||
Print |
|||
Next</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 |
|||
0 OK, 0:105</pre> |
|||
==={{header|Visual Basic}}=== |
|||
{{works with|Visual Basic|VB6 Standard}} |
|||
<lang vb>Sub Main() |
|||
Const nmax = 12, xx = 3 |
|||
Const x = xx + 1 |
|||
Dim i As Integer, j As Integer, s As String |
|||
s = String(xx, " ") & " |" |
|||
For j = 1 To nmax |
|||
s = s & Right(String(x, " ") & j, x) |
|||
Next j |
|||
Debug.Print s |
|||
s = String(xx, "-") & " +" |
|||
For j = 1 To nmax |
|||
s = s & " " & String(xx, "-") |
|||
Next j |
|||
Debug.Print s |
|||
For i = 1 To nmax |
|||
s = Right(String(xx, " ") & i, xx) & " |" |
|||
For j = 1 To nmax |
|||
If j >= i _ |
|||
Then s = s & Right(String(x, " ") & i * j, x) _ |
|||
Else s = s & String(x, " ") |
|||
Next j |
|||
Debug.Print s |
|||
Next i |
|||
End Sub 'Main</lang> |
|||
{{Out}} |
|||
<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|XBasic}}=== |
|||
{{trans|Modula-2}} |
|||
{{works with|Windows XBasic}} |
|||
<lang xbasic> |
|||
PROGRAM "multiplicationtables" |
|||
VERSION "0.0001" |
|||
DECLARE FUNCTION Entry() |
|||
FUNCTION Entry() |
|||
$N = 12 |
|||
FOR j@@ = 1 TO $N - 1 |
|||
PRINT FORMAT$("### ", j@@); |
|||
NEXT j@@ |
|||
PRINT FORMAT$("###", $N) |
|||
FOR j@@ = 0 TO $N - 1 |
|||
PRINT "----"; |
|||
NEXT j@@ |
|||
PRINT "+" |
|||
FOR i@@ = 1 TO $N |
|||
FOR j@@ = 1 TO $N |
|||
IF j@@ < i@@ THEN |
|||
PRINT " "; |
|||
ELSE |
|||
PRINT FORMAT$("### ", i@@ * j@@); |
|||
END IF |
|||
NEXT j@@ |
|||
PRINT "|"; FORMAT$(" ##", i@@) |
|||
NEXT i@@ |
|||
END FUNCTION |
|||
END PROGRAM |
|||
</lang> |
|||
{{out}} |
|||
<pre> |
|||
1 2 3 4 5 6 7 8 9 10 11 12 |
|||
------------------------------------------------+ |
|||
1 2 3 4 5 6 7 8 9 10 11 12 | 1 |
|||
4 6 8 10 12 14 16 18 20 22 24 | 2 |
|||
9 12 15 18 21 24 27 30 33 36 | 3 |
|||
16 20 24 28 32 36 40 44 48 | 4 |
|||
25 30 35 40 45 50 55 60 | 5 |
|||
36 42 48 54 60 66 72 | 6 |
|||
49 56 63 70 77 84 | 7 |
|||
64 72 80 88 96 | 8 |
|||
81 90 99 108 | 9 |
|||
100 110 120 | 10 |
|||
121 132 | 11 |
|||
144 | 12 |
|||
</pre> |
|||
==={{header|Yabasic}}=== |
|||
<lang freebasic>print " X| 1 2 3 4 5 6 7 8 9 10 11 12" |
|||
print "---+------------------------------------------------" |
|||
for i = 1 to 12 |
|||
nums$ = right$(" " + str$(i), 3) + "|" |
|||
for j = 1 to 12 |
|||
if i <= j then |
|||
if j >= 1 then |
|||
nums$ = nums$ + left$(" ", (4 - len(str$(i * j)))) |
|||
end if |
|||
nums$ = nums$ + str$(i * j) |
|||
else |
|||
nums$ = nums$ + " " |
|||
end if |
|||
next j |
|||
print nums$ |
|||
next i</lang> |
|||
=={{header|BASIC256}}== |
=={{header|BASIC256}}== |