Il s'agit en réalité d'une ébauche de programme. Il est donc largement incomplet. L'objectif fut de réussir à accomplir les mouvements élémentaires intervenants dans la résolution du rubik's cube. Nous avons abandonné pour nous pencher sur d'autres points moins complexes mais tout aussi intéressants.
Visual Basic est un logiciel qui accompagne Excel et qui permet de faire ses propres programmes avec un langage plus "accessible" que le C++.
Le programme via Visual Basic que nous avons réalisé est le suivant :
Sub rubiks()
'definition des tableaux
Dim F(1 To 3, 1 To 3) As String
Dim R(1 To 3, 1 To 3) As String
Dim l(1 To 3, 1 To 3) As String
Dim U(1 To 3, 1 To 3) As String
Dim D(1 To 3, 1 To 3) As String
Dim B(1 To 3, 1 To 3) As String
End Sub
Sub initialisation()
'definition des positions des couleurs
For i = 1 To 3
For j = 1 To 3
F(i, j) = R
Next i
Next j
For i = 1 To 3
For j = 1 To 3
R(i, j) = "Y"
Next i
Next j
For i = 1 To 3
For j = 1 To 3
l(i, j) = "W"
Next i
Next j
For i = 1 To 3
For j = 1 To 3
U(i, j) = "B"
Next i
Next j
For i = 1 To 3
For j = 1 To 3
D(i, j) = "G"
Next i
Next j
For i = 1 To 3
For j = 1 To 3
B(i, j) = "O"
Next i
Next j
End Sub
Sub cellules()
'definition des passages aux cellules
For i = 0 To 3
For j = 0 To 3
Cells(4 + i, 4 + j).Value = F(i, j)
Call couleur(4 + i, 4 + j)
Next j
Next i
For i = 0 To 3
For j = 0 To 3
Cells(9 + i, 4 + j).Value = R(i, j)
Call couleur(9 + i, 4 + j)
Next j
Next i
For i = 0 To 3
For j = 0 To 3
Cells(1 + i, 4 + j).Value = l(i, j)
Call couleur(1 + i, 4 + j)
Next j
Next i
For i = 0 To 3
For j = 0 To 3
Cells(4 + i, 1 + j).Value = U(i, j)
Call couleur(4 + i, 1 + j)
Next j
Next i
For i = 0 To 3
For j = 0 To 3
Cells(4 + i, 8 + j).Value = D(i, j)
Call couleur(4 + i, 8 + j)
Next j
Next i
For i = 0 To 3
For j = 0 To 3
Cells(4 + i, 10 + j).Value = B(i, j)
Call couleur(4 + i, 10 + j)
Next j
Next i
End Sub
Sub couleur(k, l)
'definition des couleurs
If Cells(k, l).Value = "R" Then
Cells(k, l).Select
With Selection.Interior
.ColorIndex = 3
.Pattern = xlSolid
End If
If Cells(k, l).Value = "Y" Then
Cells(k, l).Select
With Selection.Interior
.ColorIndex = 6
.Pattern = xlSolid
End If
If Cells(k, l).Value = "W" Then
Cells(k, l).Select
With Selection.Interior
.ColorIndex = 2
.Pattern = xlSolid
End If
If Cells(k, l).Value = "B" Then
Cells(k, l).Select
With Selection.Interior
.ColorIndex = 5
.Pattern = xlSolid
End If
If Cells(k, l).Value = "G" Then
Cells(k, l).Select
With Selection.Interior
.ColorIndex = 43
.Pattern = xlSolid
End If
If Cells(k, l).Value = "O" Then
Cells(k, l).Select
With Selection.Interior
.ColorIndex = 44
.Pattern = xlSolid
End If
End Sub
Analyse des outils mathématiques et mystiques liés à la résolution du Rubik's cube.