Vorige Pagina About the Author

' Constructs Simple Magic Cubes (6 x 6 x 6)
' Trenkler Principle

' Tested with Office 2007 under Windows 7

Sub MgcCube6a()

Dim a1(4), c(216), b(6), b1(27), a(216)

y = MsgBox("Blocked", 0, "MgcCube6a")
End

Sheets("Klad1").Select

a1(1) = 0: a1(2) = 3: a1(3) = 5: a1(4) = 6:

' Define Simple Magic Cube

b1(19) = 10: b1(20) = 8:  b1(21) = 24: b1(22) = 5:  b1(23) = 21: b1(24) = 16: b1(25) = 27: b1(26) = 13: b1(27) = 2:
b1(10) = 6:  b1(11) = 19: b1(12) = 17: b1(13) = 25: b1(14) = 14: b1(15) = 3:  b1(16) = 11: b1(17) = 9:  b1(18) = 22:
b1(1) = 26:  b1(2) = 15:  b1(3) = 1:   b1(4) = 12:  b1(5) = 7:   b1(6) = 23:  b1(7) = 4:   b1(8) = 20:  b1(9) = 18:

n1 = 0: n9 = 0: n10 = 0: k1 = 1: k2 = 1

t1 = Timer

' Center Planes

For j108 = 1 To 4
c(108) = a1(j108)
For j107 = 1 To 4
If j107 = j108 Then GoTo 1070
c(107) = a1(j107)
For j106 = 1 To 4
c(106) = a1(j106)
For j105 = 1 To 4
If j105 = j106 Then GoTo 1050
c(105) = a1(j105)
For j104 = 1 To 4
c(104) = a1(j104)

c(103) = 21 - c(104) - c(105) - c(106) - c(107) - c(108)
If c(103) <> a1(1) And c(103) <> a1(2) And c(103) <> a1(3) And c(103) <> a1(4) Then GoTo 1040
If c(103) = c(104) Then GoTo 1040

For j102 = 1 To 4
c(102) = a1(j102)
If j102 = j107 Or j102 = j108 Then GoTo 1020
c(101) = 14 - c(102) - c(107) - c(108)

For j100 = 1 To 4
c(100) = a1(j100)
If j100 = j105 Or j100 = j106 Then GoTo 1000
c(99) = 14 - c(100) - c(105) - c(106)

For j98 = 1 To 4
c(98) = a1(j98)
If c(98) = c(103) Or c(98) = c(104) Then GoTo 980
c(97) = 14 - c(98) - c(103) - c(104)

For j96 = 1 To 4
c(96) = a1(j96)
For j95 = 1 To 4
If j95 = j96 Then GoTo 950
c(95) = a1(j95)
For j94 = 1 To 4
c(94) = a1(j94)
For j93 = 1 To 4
If j93 = j94 Then GoTo 930
c(93) = a1(j93)
For j92 = 1 To 4
c(92) = a1(j92)

c(91) = 21 - c(92) - c(93) - c(94) - c(95) - c(96)
If c(91) <> a1(1) And c(91) <> a1(2) And c(91) <> a1(3) And c(91) <> a1(4) Then GoTo 920
If c(91) = c(92) Then GoTo 920

For j90 = 1 To 4
c(90) = a1(j90)
If j90 = j95 Or j90 = j96 Then GoTo 900
c(89) = 14 - c(90) - c(95) - c(96)

For j88 = 1 To 4
c(88) = a1(j88)
If j88 = j93 Or j88 = j94 Then GoTo 880
c(87) = 14 - c(88) - c(93) - c(94)

For j86 = 1 To 4
c(86) = a1(j86)
If c(86) = c(91) Or c(86) = c(92) Then GoTo 860
c(85) = 14 - c(86) - c(91) - c(92)

For j84 = 1 To 4
c(84) = a1(j84)

c(78) = 21 - c(84) - c(90) - c(96) - c(102) - c(108)
If c(78) <> a1(1) And c(78) <> a1(2) And c(78) <> a1(3) And c(78) <> a1(4) Then GoTo 840

For j83 = 1 To 4
If j83 = j84 Then GoTo 830
c(83) = a1(j83)

c(77) = 14 - c(78) - c(83) - c(84)
If c(77) <> a1(1) And c(77) <> a1(2) And c(77) <> a1(3) And c(77) <> a1(4) Then GoTo 830

For j82 = 1 To 4
c(82) = a1(j82)

c(76) = 21 - c(82) - c(88) - c(94) - c(100) - c(106)
If c(76) <> a1(1) And c(76) <> a1(2) And c(76) <> a1(3) And c(76) <> a1(4) Then GoTo 820

For j81 = 1 To 4
If j81 = j82 Then GoTo 810
c(81) = a1(j81)

c(75) = 14 - c(76) - c(81) - c(82)
If c(75) <> a1(1) And c(75) <> a1(2) And c(75) <> a1(3) And c(75) <> a1(4) Then GoTo 810

For j80 = 1 To 4
c(80) = a1(j80)

c(79) = 21 - c(80) - c(81) - c(82) - c(83) - c(84)
If c(79) <> a1(1) And c(79) <> a1(2) And c(79) <> a1(3) And c(79) <> a1(4) Then GoTo 800
If c(79) = c(80) Then GoTo 800

c(74) = 21 - c(80) - c(86) - c(92) - c(98) - c(104)
If c(74) <> a1(1) And c(74) <> a1(2) And c(74) <> a1(3) And c(74) <> a1(4) Then GoTo 800

c(73) = 14 - c(74) - c(79) - c(80)
If c(73) <> a1(1) And c(73) <> a1(2) And c(73) <> a1(3) And c(73) <> a1(4) Then GoTo 800

For i1 = 73 To 108
    c(i1 + 36) = 7 - c(i1)
Next i1
    
'   Space Diagonal 1
    
For j8 = 1 To 4
c(8) = a1(j8)

For j7 = 1 To 4
If j7 = j8 Then GoTo 70
c(7) = a1(j7)

For j2 = 1 To 4
If j2 = j7 Or j2 = j8 Then GoTo 20
c(2) = a1(j2)
c(1) = 14 - c(2) - c(7) - c(8)

c(37) = 7 - c(1):    c(38) = 7 - c(2):
c(43) = 7 - c(7):    c(44) = 7 - c(8):
    
For j180 = 1 To 4
c(180) = a1(j180)

For j179 = 1 To 4
If j179 = j180 Then GoTo 1790
c(179) = a1(j179)

For j174 = 1 To 4
If j174 = j179 Or j174 = j180 Then GoTo 1740
c(174) = a1(j174)
c(173) = 14 - c(174) - c(179) - c(180)

c(209) = 7 - c(173):    c(210) = 7 - c(174):
c(215) = 7 - c(179):    c(216) = 7 - c(180):
    
If c(1) + c(44) + c(87) + c(130) + c(173) + c(216) <> 21 Then GoTo 1740
    
'   Space Diagonal 2
    
For j12 = 1 To 4
c(12) = a1(j12)

For j11 = 1 To 4
If j11 = j12 Then GoTo 110
c(11) = a1(j11)

For j6 = 1 To 4
If j6 = j11 Or j6 = j12 Then GoTo 60
c(6) = a1(j6)
c(5) = 14 - c(6) - c(11) - c(12)

c(41) = 7 - c(5):    c(42) = 7 - c(6):
c(47) = 7 - c(11):   c(48) = 7 - c(12):
    
For j176 = 1 To 4
c(176) = a1(j176)

For j175 = 1 To 4
If j175 = j176 Then GoTo 1750
c(175) = a1(j175)

For j170 = 1 To 4
If j170 = j175 Or j170 = j176 Then GoTo 1700
c(170) = a1(j170)
c(169) = 14 - c(170) - c(175) - c(176)

c(205) = 7 - c(169):    c(206) = 7 - c(170):
c(211) = 7 - c(175):    c(212) = 7 - c(176):
    
If c(6) + c(47) + c(88) + c(129) + c(170) + c(211) <> 21 Then GoTo 1700
   
'   Space Diagonal 3
    
For j32 = 1 To 4
c(32) = a1(j32)

For j31 = 1 To 4
If j31 = j32 Then GoTo 310
c(31) = a1(j31)

For j26 = 1 To 4
If j26 = j31 Or j26 = j32 Then GoTo 260
c(26) = a1(j26)
c(25) = 14 - c(26) - c(31) - c(32)

c(61) = 7 - c(25):   c(62) = 7 - c(26):
c(67) = 7 - c(31):   c(68) = 7 - c(32):
    
For j156 = 1 To 4
c(156) = a1(j156)

For j155 = 1 To 4
If j155 = j156 Then GoTo 1550
c(155) = a1(j155)

For j150 = 1 To 4
If j150 = j155 Or j150 = j156 Then GoTo 1500
c(150) = a1(j150)
c(149) = 14 - c(150) - c(155) - c(156)

c(185) = 7 - c(149):    c(186) = 7 - c(150):
c(191) = 7 - c(155):    c(192) = 7 - c(156):
    
If c(31) + c(62) + c(93) + c(124) + c(155) + c(186) <> 21 Then GoTo 1500
    
'   Space Diagonal 4
    
For j36 = 1 To 4
c(36) = a1(j36)

For j35 = 1 To 4
If j35 = j36 Then GoTo 350
c(35) = a1(j35)

For j30 = 1 To 4
If j30 = j35 Or j30 = j36 Then GoTo 300
c(30) = a1(j30)
c(29) = 14 - c(30) - c(35) - c(36)

c(65) = 7 - c(29):   c(66) = 7 - c(30):
c(71) = 7 - c(35):   c(72) = 7 - c(36):
    
For j152 = 1 To 4
c(152) = a1(j152)

For j151 = 1 To 4
If j151 = j152 Then GoTo 1510
c(151) = a1(j151)

For j146 = 1 To 4
If j146 = j151 Or j146 = j152 Then GoTo 1460
c(146) = a1(j146)
c(145) = 14 - c(146) - c(151) - c(152)

c(181) = 7 - c(145):    c(182) = 7 - c(146):
c(187) = 7 - c(151):    c(188) = 7 - c(152):
    
If c(36) + c(65) + c(94) + c(123) + c(152) + c(181) <> 21 Then GoTo 1460
    
'   Complete Bottom

For j34 = 1 To 4
c(34) = a1(j34)
    
c(33) = 21 - c(31) - c(32) - c(34) - c(35) - c(36)
If c(33) <> a1(1) And c(33) <> a1(2) And c(33) <> a1(3) And c(33) <> a1(4) Then GoTo 340
If c(33) = c(34) Then GoTo 340
    
For j28 = 1 To 4
c(28) = a1(j28)
If c(28) = c(34) Or c(28) = c(33) Then GoTo 280
c(27) = 14 - c(28) - c(33) - c(34)
    
For j10 = 1 To 4
c(10) = a1(j10)
    
c(9) = 21 - c(7) - c(8) - c(10) - c(11) - c(12)
If c(9) <> a1(1) And c(9) <> a1(2) And c(9) <> a1(3) And c(9) <> a1(4) Then GoTo 100
If c(9) = c(10) Then GoTo 100
    
For j4 = 1 To 4
c(4) = a1(j4)
If c(4) = c(9) Or c(4) = c(10) Then GoTo 40
c(3) = 14 - c(4) - c(9) - c(10)
 
For j24 = 1 To 4
c(24) = a1(j24)

c(18) = 21 - c(24) - c(30) - c(36) - c(6) - c(12)
If c(18) <> a1(1) And c(18) <> a1(2) And c(18) <> a1(3) And c(18) <> a1(4) Then GoTo 240
If c(18) = c(24) Then GoTo 240

For j23 = 1 To 4
c(23) = a1(j23)
If c(23) = c(24) Or c(23) = c(18) Then GoTo 230
c(17) = 14 - c(18) - c(23) - c(24)

For j22 = 1 To 4
c(22) = a1(j22)

c(16) = 21 - c(22) - c(28) - c(34) - c(4) - c(10)
If c(16) <> a1(1) And c(16) <> a1(2) And c(16) <> a1(3) And c(16) <> a1(4) Then GoTo 220
If c(16) = c(22) Then GoTo 220

For j21 = 1 To 4
c(21) = a1(j21)
If c(21) = c(22) Or c(21) = c(16) Then GoTo 210
c(15) = 14 - c(16) - c(21) - c(22)

For j20 = 1 To 4
c(20) = a1(j20)

c(19) = 21 - c(20) - c(21) - c(22) - c(23) - c(24)
If c(19) <> a1(1) And c(19) <> a1(2) And c(19) <> a1(3) And c(19) <> a1(4) Then GoTo 200
If c(19) = c(20) Then GoTo 200

c(14) = 21 - c(20) - c(26) - c(32) - c(2) - c(8)
If c(14) <> a1(1) And c(14) <> a1(2) And c(14) <> a1(3) And c(14) <> a1(4) Then GoTo 200
If c(14) = c(19) Or c(14) = c(20) Then GoTo 200

c(13) = 14 - c(14) - c(19) - c(20)
If c(13) <> a1(1) And c(13) <> a1(2) And c(13) <> a1(3) And c(13) <> a1(4) Then GoTo 200

For i1 = 1 To 36
    c(i1 + 36) = 7 - c(i1)
Next i1

'   Complete Top

For j178 = 1 To 4
c(178) = a1(j178)
    
c(177) = 21 - c(175) - c(176) - c(178) - c(179) - c(180)
If c(177) <> a1(1) And c(177) <> a1(2) And c(177) <> a1(3) And c(177) <> a1(4) Then GoTo 1780
If c(177) = c(178) Then GoTo 1780
    
For j172 = 1 To 4
c(172) = a1(j172)
If c(172) = c(178) Or c(172) = c(177) Then GoTo 1720
c(171) = 14 - c(172) - c(177) - c(178)

For j154 = 1 To 4
c(154) = a1(j154)
    
c(153) = 21 - c(151) - c(152) - c(154) - c(155) - c(156)
If c(153) <> a1(1) And c(153) <> a1(2) And c(153) <> a1(3) And c(153) <> a1(4) Then GoTo 1540
If c(153) = c(154) Then GoTo 1540
    
For j148 = 1 To 4
c(148) = a1(j148)
If c(148) = c(153) Or c(148) = c(154) Then GoTo 1480
c(147) = 14 - c(148) - c(153) - c(154)

For j168 = 1 To 4
c(168) = a1(j168)

c(162) = 21 - c(168) - c(174) - c(180) - c(150) - c(156)
If c(162) <> a1(1) And c(162) <> a1(2) And c(162) <> a1(3) And c(162) <> a1(4) Then GoTo 1680
If c(162) = c(168) Then GoTo 1680

For j167 = 1 To 4
c(167) = a1(j167)
If c(167) = c(168) Or c(167) = c(162) Then GoTo 1670
c(161) = 14 - c(162) - c(167) - c(168)

For j166 = 1 To 4
c(166) = a1(j166)

c(160) = 21 - c(166) - c(172) - c(178) - c(148) - c(154)
If c(160) <> a1(1) And c(160) <> a1(2) And c(160) <> a1(3) And c(160) <> a1(4) Then GoTo 1660
If c(160) = c(166) Then GoTo 1660

For j165 = 1 To 4
c(165) = a1(j165)
If c(165) = c(166) Or c(165) = c(160) Then GoTo 1650
c(159) = 14 - c(160) - c(165) - c(166)

For j164 = 1 To 4
c(164) = a1(j164)

c(163) = 21 - c(164) - c(165) - c(166) - c(167) - c(168)
If c(163) <> a1(1) And c(163) <> a1(2) And c(163) <> a1(3) And c(163) <> a1(4) Then GoTo 1640
If c(163) = c(164) Then GoTo 1640

c(158) = 21 - c(164) - c(170) - c(176) - c(146) - c(152)
If c(158) <> a1(1) And c(158) <> a1(2) And c(158) <> a1(3) And c(158) <> a1(4) Then GoTo 1640
If c(158) = c(163) Or c(158) = c(164) Then GoTo 1640

c(157) = 14 - c(158) - c(163) - c(164)
If c(157) <> a1(1) And c(157) <> a1(2) And c(157) <> a1(3) And c(157) <> a1(4) Then GoTo 1640

For i1 = 145 To 180
    c(i1 + 36) = 7 - c(i1)
Next i1

        MC6 = 21: GoSub 2000: If fl1 = 0 Then GoTo 1640  'Back Check Trenkler Cube
    
        GoSub 2800                                       'Contruct Simple Magic Cube
        GoSub 2850: If fl1 = 0 Then GoTo 1640            'Back Check Identical Numbers
        
        n9 = n9 + 1: GoSub 2750                 'Print Cube

1640 Next j164
1650 Next j165
1660 Next j166
1670 Next j167
1680 Next j168

1480 Next j148
1540 Next j154

1720 Next j172
1780 Next j178

200 Next j20
210 Next j21
220 Next j22
230 Next j23
240 Next j24

40 Next j4
100 Next j10

280 Next j28
340 Next j34

1460 Next j146
1510 Next j151
1520 Next j152

300 Next j30
350 Next j35
360 Next j36

1500 Next j150
1550 Next j155
1560 Next j156

260 Next j26
310 Next j31
320 Next j32

1700 Next j170
1750 Next j175
1760 Next j176

60  Next j6
110 Next j11
120 Next j12

1740 Next j174
1790 Next j179
1800 Next j180

20 Next j2
70 Next j7
80 Next j8

800 Next j80
810 Next j81
820 Next j82
830 Next j83
840 Next j84

860  Next j86
880 Next j88
900 Next j90

920 Next j92
930 Next j93
940 Next j94
950 Next j95
960 Next j96

980  Next j98
1000 Next j100
1020 Next j102

1040 Next j104
1050 Next j105
1060 Next j106
1070 Next j107
1080 Next j108

     t2 = Timer
    
     t10 = Str(t2 - t1) + " sec., " + Str(n9) + " Solutions"
     y = MsgBox(t10, 0, "Routine MgcCube6a")

End

'    Back Check Magic Constant

2000 fl1 = 1

'   Rows
    
    i1 = -5
    For i0 = 1 To 36
        i1 = i1 + 6
        b(1) = c(i1): b(2) = c(i1 + 1): b(3) = c(i1 + 2): b(4) = c(i1 + 3): b(5) = c(i1 + 4): b(6) = c(i1 + 5)
        GoSub 2860
        If fl1 = 0 Then Return
    Next i0
   
'   Columns
    
    i1 = 0: i2 = 0
    For i0 = 1 To 36
        i1 = i1 + 1
        b(1) = c(i1): b(2) = c(i1 + 6): b(3) = c(i1 + 12): b(4) = c(i1 + 18): b(5) = c(i1 + 24): b(6) = c(i1 + 30)
        i2 = i2 + 1: If i2 = 6 Then i2 = 0: i1 = i1 + 30
        GoSub 2860
        If fl1 = 0 Then Return
    Next i0
    
'   Pillars
    
    i1 = 0: i2 = 0
    For i0 = 1 To 36
        i1 = i0
        b(1) = c(i1): b(2) = c(i1 + 36): b(3) = c(i1 + 72): b(4) = c(i1 + 108): b(5) = c(i1 + 144): b(6) = c(i1 + 180)
        GoSub 2860
        If fl1 = 0 Then Return
    Next i0

'   Space Diagonals

    fl1 = 1
    If c(1) + c(44) + c(87) + c(130) + c(173) + c(216) <> MC6 Then fl1 = 0: Return
    If c(6) + c(47) + c(88) + c(129) + c(170) + c(211) <> MC6 Then fl1 = 0: Return
    If c(31) + c(62) + c(93) + c(124) + c(155) + c(186) <> MC6 Then fl1 = 0: Return
    If c(36) + c(65) + c(94) + c(123) + c(152) + c(181) <> MC6 Then fl1 = 0: Return

    Return

'    Check MC6

2860 fl1 = 1
     If b(1) + b(2) + b(3) + b(4) + b(5) + b(6) <> MC6 Then fl1 = 0
     Return

'    Print Cubes (6 plane format)

2750 n2 = n2 + 1
     If n2 = 5 Then
         n2 = 1: k1 = k1 + 42: k2 = 1
     Else
         If n9 > 1 Then k2 = k2 + 7
     End If

     Cells(k1, k2 + 1).Select
     Cells(k1, k2 + 1).Font.Color = -4165632
     Cells(k1, k2 + 1).Value = n9
       
     For i0 = 1 To 6
         i3 = (6 - i0) * 36
         For i1 = 1 To 6
             For i2 = 1 To 6
                 i3 = i3 + 1
'                Cells(k1 + i1 + (i0 - 1) * 7, k2 + i2).Value = c(i3)   'Trenkler Cube
                 Cells(k1 + i1 + (i0 - 1) * 7, k2 + i2).Value = a(i3)   'Simple Magic Cube
             Next i2
         Next i1
     Next i0
    
     Return

'    Calculate Simple Magic Cubes

2800

a(181) = b1(19) + 27 * c(181): a(182) = b1(19) + 27 * c(182): a(183) = b1(20) + 27 * c(183):
a(187) = b1(19) + 27 * c(187): a(188) = b1(19) + 27 * c(188): a(189) = b1(20) + 27 * c(189):
a(193) = b1(22) + 27 * c(193): a(194) = b1(22) + 27 * c(194): a(195) = b1(23) + 27 * c(195):
a(199) = b1(22) + 27 * c(199): a(200) = b1(22) + 27 * c(200): a(201) = b1(23) + 27 * c(201):
a(205) = b1(25) + 27 * c(205): a(206) = b1(25) + 27 * c(206): a(207) = b1(26) + 27 * c(207):
a(211) = b1(25) + 27 * c(211): a(212) = b1(25) + 27 * c(212): a(213) = b1(26) + 27 * c(213):
        
a(184) = b1(20) + 27 * c(184): a(185) = b1(21) + 27 * c(185): a(186) = b1(21) + 27 * c(186):
a(190) = b1(20) + 27 * c(190): a(191) = b1(21) + 27 * c(191): a(192) = b1(21) + 27 * c(192):
a(196) = b1(23) + 27 * c(196): a(197) = b1(24) + 27 * c(197): a(198) = b1(24) + 27 * c(198):
a(202) = b1(23) + 27 * c(202): a(203) = b1(24) + 27 * c(203): a(204) = b1(24) + 27 * c(204):
a(208) = b1(26) + 27 * c(208): a(209) = b1(27) + 27 * c(209): a(210) = b1(27) + 27 * c(210):
a(214) = b1(26) + 27 * c(214): a(215) = b1(27) + 27 * c(215): a(216) = b1(27) + 27 * c(216):
        
a(145) = b1(19) + 27 * c(145): a(146) = b1(19) + 27 * c(146): a(147) = b1(20) + 27 * c(147):
a(151) = b1(19) + 27 * c(151): a(152) = b1(19) + 27 * c(152): a(153) = b1(20) + 27 * c(153):
a(157) = b1(22) + 27 * c(157): a(158) = b1(22) + 27 * c(158): a(159) = b1(23) + 27 * c(159):
a(163) = b1(22) + 27 * c(163): a(164) = b1(22) + 27 * c(164): a(165) = b1(23) + 27 * c(165):
a(169) = b1(25) + 27 * c(169): a(170) = b1(25) + 27 * c(170): a(171) = b1(26) + 27 * c(171):
a(175) = b1(25) + 27 * c(175): a(176) = b1(25) + 27 * c(176): a(177) = b1(26) + 27 * c(177):
        
a(148) = b1(20) + 27 * c(148): a(149) = b1(21) + 27 * c(149): a(150) = b1(21) + 27 * c(150):
a(154) = b1(20) + 27 * c(154): a(155) = b1(21) + 27 * c(155): a(156) = b1(21) + 27 * c(156):
a(160) = b1(23) + 27 * c(160): a(161) = b1(24) + 27 * c(161): a(162) = b1(24) + 27 * c(162):
a(166) = b1(23) + 27 * c(166): a(167) = b1(24) + 27 * c(167): a(168) = b1(24) + 27 * c(168):
a(172) = b1(26) + 27 * c(172): a(173) = b1(27) + 27 * c(173): a(174) = b1(27) + 27 * c(174):
a(178) = b1(26) + 27 * c(178): a(179) = b1(27) + 27 * c(179): a(180) = b1(27) + 27 * c(180):
        
a(109) = b1(10) + 27 * c(109): a(110) = b1(10) + 27 * c(110): a(111) = b1(11) + 27 * c(111):
a(115) = b1(10) + 27 * c(115): a(116) = b1(10) + 27 * c(116): a(117) = b1(11) + 27 * c(117):
a(121) = b1(13) + 27 * c(121): a(122) = b1(13) + 27 * c(122): a(123) = b1(14) + 27 * c(123):
a(127) = b1(13) + 27 * c(127): a(128) = b1(13) + 27 * c(128): a(129) = b1(14) + 27 * c(129):
a(133) = b1(16) + 27 * c(133): a(134) = b1(16) + 27 * c(134): a(135) = b1(17) + 27 * c(135):
a(139) = b1(16) + 27 * c(139): a(140) = b1(16) + 27 * c(140): a(141) = b1(17) + 27 * c(141):
        
a(112) = b1(11) + 27 * c(112): a(113) = b1(12) + 27 * c(113): a(114) = b1(12) + 27 * c(114):
a(118) = b1(11) + 27 * c(118): a(119) = b1(12) + 27 * c(119): a(120) = b1(12) + 27 * c(120):
a(124) = b1(14) + 27 * c(124): a(125) = b1(15) + 27 * c(125): a(126) = b1(15) + 27 * c(126):
a(130) = b1(14) + 27 * c(130): a(131) = b1(15) + 27 * c(131): a(132) = b1(15) + 27 * c(132):
a(136) = b1(17) + 27 * c(136): a(137) = b1(18) + 27 * c(137): a(138) = b1(18) + 27 * c(138):
a(142) = b1(17) + 27 * c(142): a(143) = b1(18) + 27 * c(143): a(144) = b1(18) + 27 * c(144):
        
a(73) = b1(10) + 27 * c(73):   a(74) = b1(10) + 27 * c(74):   a(75) = b1(11) + 27 * c(75):
a(79) = b1(10) + 27 * c(79):   a(80) = b1(10) + 27 * c(80):   a(81) = b1(11) + 27 * c(81):
a(85) = b1(13) + 27 * c(85):   a(86) = b1(13) + 27 * c(86):   a(87) = b1(14) + 27 * c(87):
a(91) = b1(13) + 27 * c(91):   a(92) = b1(13) + 27 * c(92):   a(93) = b1(14) + 27 * c(93):
a(97) = b1(16) + 27 * c(97):   a(98) = b1(16) + 27 * c(98):   a(99) = b1(17) + 27 * c(99):
a(103) = b1(16) + 27 * c(103): a(104) = b1(16) + 27 * c(104): a(105) = b1(17) + 27 * c(105):
        
a(76) = b1(11) + 27 * c(76):   a(77) = b1(12) + 27 * c(77):   a(78) = b1(12) + 27 * c(78):
a(82) = b1(11) + 27 * c(82):   a(83) = b1(12) + 27 * c(83):   a(84) = b1(12) + 27 * c(84):
a(88) = b1(14) + 27 * c(88):   a(89) = b1(15) + 27 * c(89):   a(90) = b1(15) + 27 * c(90):
a(94) = b1(14) + 27 * c(94):   a(95) = b1(15) + 27 * c(95):   a(96) = b1(15) + 27 * c(96):
a(100) = b1(17) + 27 * c(100): a(101) = b1(18) + 27 * c(101): a(102) = b1(18) + 27 * c(102):
a(106) = b1(17) + 27 * c(106): a(107) = b1(18) + 27 * c(107): a(108) = b1(18) + 27 * c(108):
        
a(37) = b1(1) + 27 * c(37):    a(38) = b1(1) + 27 * c(38):    a(39) = b1(2) + 27 * c(39):
a(43) = b1(1) + 27 * c(43):    a(44) = b1(1) + 27 * c(44):    a(45) = b1(2) + 27 * c(45):
a(49) = b1(4) + 27 * c(49):    a(50) = b1(4) + 27 * c(50):    a(51) = b1(5) + 27 * c(51):
a(55) = b1(4) + 27 * c(55):    a(56) = b1(4) + 27 * c(56):    a(57) = b1(5) + 27 * c(57):
a(61) = b1(7) + 27 * c(61):    a(62) = b1(7) + 27 * c(62):    a(63) = b1(8) + 27 * c(63):
a(67) = b1(7) + 27 * c(67):    a(68) = b1(7) + 27 * c(68):    a(69) = b1(8) + 27 * c(69):
        
a(40) = b1(2) + 27 * c(40):    a(41) = b1(3) + 27 * c(41):    a(42) = b1(3) + 27 * c(42):
a(46) = b1(2) + 27 * c(46):    a(47) = b1(3) + 27 * c(47):    a(48) = b1(3) + 27 * c(48):
a(52) = b1(5) + 27 * c(52):    a(53) = b1(6) + 27 * c(53):    a(54) = b1(6) + 27 * c(54):
a(58) = b1(5) + 27 * c(58):    a(59) = b1(6) + 27 * c(59):    a(60) = b1(6) + 27 * c(60):
a(64) = b1(8) + 27 * c(64):    a(65) = b1(9) + 27 * c(65):    a(66) = b1(9) + 27 * c(66):
a(70) = b1(8) + 27 * c(70):    a(71) = b1(9) + 27 * c(71):    a(72) = b1(9) + 27 * c(72):
        
a(1) = b1(1) + 27 * c(1):      a(2) = b1(1) + 27 * c(2):      a(3) = b1(2) + 27 * c(3):
a(7) = b1(1) + 27 * c(7):      a(8) = b1(1) + 27 * c(8):      a(9) = b1(2) + 27 * c(9):
a(13) = b1(4) + 27 * c(13):    a(14) = b1(4) + 27 * c(14):    a(15) = b1(5) + 27 * c(15):
a(19) = b1(4) + 27 * c(19):    a(20) = b1(4) + 27 * c(20):    a(21) = b1(5) + 27 * c(21):
a(25) = b1(7) + 27 * c(25):    a(26) = b1(7) + 27 * c(26):    a(27) = b1(8) + 27 * c(27):
a(31) = b1(7) + 27 * c(31):    a(32) = b1(7) + 27 * c(32):    a(33) = b1(8) + 27 * c(33):

a(4) = b1(2) + 27 * c(4):      a(5) = b1(3) + 27 * c(5):      a(6) = b1(3) + 27 * c(6):
a(10) = b1(2) + 27 * c(10):    a(11) = b1(3) + 27 * c(11):    a(12) = b1(3) + 27 * c(12):
a(16) = b1(5) + 27 * c(16):    a(17) = b1(6) + 27 * c(17):    a(18) = b1(6) + 27 * c(18):
a(22) = b1(5) + 27 * c(22):    a(23) = b1(6) + 27 * c(23):    a(24) = b1(6) + 27 * c(24):
a(28) = b1(8) + 27 * c(28):    a(29) = b1(9) + 27 * c(29):    a(30) = b1(9) + 27 * c(30):
a(34) = b1(8) + 27 * c(34):    a(35) = b1(9) + 27 * c(35):    a(36) = b1(9) + 27 * c(36):

Return

'    Check Identical Numbers (Back Check)

2850 fl1 = 1
     For i1 = 1 To 216
     a20 = a(i1)
     For i2 = i1 + 1 To 216
         If a20 = a(i2) Then fl1 = 0: Return
     Next i2
     Next i1

     Return

End Sub

Vorige Pagina About the Author