Rubik's Cube Solution Guide

Rubik's Cube Solution Guide
Loading the math board and drawing, please wait…
2015-12-10 02:00
This example demonstrates how to solve a Rubik's Cube. It involves core mathematical concepts such as logic, angles, and color transformations. Using GeoGebra commands like Segment, Point, CircleArc, etc., the various faces and color transformations of the cube can be constructed. Suitable for middle school and above students for geometric construction and logical thinking training.

GeoGebra Commands & Parameters

  1. Segment((x(Z) + 0.5, y(Z) - 0.25), (x(Z) + 2, y(Z) - 0.25)) → j_3
  2. Point(j_3) → M
  3. Segment((x(Z) + 0.5, y(Z) + 0.25), (x(Z) + 2, y(Z) + 0.25)) → n_2
  4. Point(n_2) → L
  5. Segment(M, L) → m_4
  6. CircleArc((x(Z) + 1.75, y(Z)), M, L) → e_4
  7. Vector((0, 0, 0), (0, 0, 1)) → kbek
  8. Sequence(Sequence[Cube[(-2.5 + i, -2.5 + j, -1.5), (i - 1.5, -2.5 + j, -1.5), kbek], i, 1, 3, 1], j, 1, 3, 1) → down
  9. Sequence(Sequence[Cube[(-2.5 + i, -2.5 + j, -0.5), (i - 1.5, -2.5 + j, -0.5), kbek], i, 1, 3, 1], j, 1, 3, 1) → middlehorizontal
  10. Sequence(Sequence[Cube[(-2.5 + i, -2.5 + j, 0.5), (i - 1.5, -2.5 + j, 0.5), kbek], i, 1, 3, 1], j, 1, 3, 1) → up
  11. Vector((0, 0, 0), (1, 0, 0)) → ibek
  12. Vector((0, 0, 0), (0, 1, 0)) → jbek
  13. Sequence(Sequence[Cube[(-2.5 + i, -1.5, -2.5 + j), (i - 1.5, -1.5, -2.5 + j), kbek], j, 1, 3, 1], i, 1, 3, 1) → front
  14. Sequence(Sequence[Cube[(-2.5 + i, -0.5, -2.5 + j), (i - 1.5, -0.5, -2.5 + j), kbek], j, 1, 3, 1], i, 1, 3, 1) → middleverticalside
  15. Sequence(Sequence[Cube[(-2.5 + i, 0.5, -2.5 + j), (i - 1.5, 0.5, -2.5 + j), kbek], j, 1, 3, 1], i, 1, 3, 1) → back
  16. Line((0, 0, 0), (0, 1, 0)) → yaxis
  17. Polygon(A, A_1, A_2, A_3) → poligonoa1, a, a_1, a_2, a_3
  18. Polygon(B, B_1, B_2, B_3) → poligonoa2, b, b_1, b_2, b_3
  19. Polygon(C, C_1, C_2, C_3) → poligonoa3, c, c_1, c_2, c_3
  20. Polygon(D, D_1, D_2, D_3) → poligonoa4, d, d_1, d_2, d_3
  21. Polygon(E, E_1, E_2, E_3) → poligonoa5, e, e_1, e_2, e_3
  22. Polygon(F, F_1, F_2, F_3) → poligonoa6, f, f_1, f_2, f_3
  23. Polygon(G, G_1, G_2, G_3) → poligonoa7, g, g_1, g_2, g_3
  24. Polygon(H, H_1, H_2, H_3) → poligonoa8, h, h_1, h_2, h_3
  25. Polygon(I, I_1, I_2, I_3) → poligonoa9, i, i_1, i_2, i_3
  26. Line((0, 0, 0), (0, 0, 1)) → zaxis
  27. Line((0, 0, 0), (1, 0, 0)) → xaxis
  28. Sequence(Sequence[Cube[(1.5, -2.5 + i, -2.5 + j), (1.5, i - 1.5, -2.5 + j), kbek], j, 1, 3, 1], i, 1, 3, 1) → right
  29. Sequence(Sequence[Cube[(0.5, -2.5 + i, -2.5 + j), (0.5, i - 1.5, -2.5 + j), kbek], j, 1, 3, 1], i, 1, 3, 1) → middleverticalfront
  30. Sequence(Sequence[Cube[(-0.5, -2.5 + i, -2.5 + j), (-0.5, i - 1.5, -2.5 + j), kbek], j, 1, 3, 1], i, 1, 3, 1) → left
  31. Polygon(A2, A2_1, A2_2, A2_3) → poligonoa10, a2, a2_1, a2_2, a2_3
  32. Polygon(B2, B2_1, B2_2, B2_3) → poligonoa11, b2, b2_1, b2_2, b2_3
  33. Polygon(C2, C2_1, C2_2, C2_3) → poligonoa12, c2, c2_1, c2_2, c2_3
  34. Polygon(D2, D2_1, D2_2, D2_3) → poligonoa13, d2, d2_1, d2_2, d2_3
  35. Polygon(E2, E2_1, E2_2, E2_3) → poligonoa14, e2, e2_1, e2_2, e2_3
  36. Polygon(F2, F2_1, F2_2, F2_3) → poligonoa15, f2, f2_1, f2_2, f2_3
  37. Polygon(G2, G2_1, G2_2, G2_3) → poligonoa16, g2, g2_1, g2_2, g2_3
  38. Polygon(H2, H2_1, H2_2, H2_3) → poligonoa17, h2, h2_1, h2_2, h2_3
  39. Polygon(I2, I2_1, I2_2, I2_3) → poligonoa18, i2, i2_1, i2_2, i2_3
  40. Polygon(A3, A3_1, A3_2, A3_3) → poligonoa19, a3, a3_1, a3_2, a3_3
  41. Polygon(B3, B3_1, B3_2, B3_3) → poligonoa20, b3, b3_1, b3_2, b3_3
  42. Polygon(C3, C3_1, C3_2, C3_3) → poligonoa21, c3, c3_1, c3_2, c3_3
  43. Polygon(D3, D3_1, D3_2, D3_3) → poligonoa22, d3, d3_1, d3_2, d3_3
  44. Polygon(E3, E3_1, E3_2, E3_3) → poligonoa23, e3, e3_1, e3_2, e3_3
  45. Polygon(F3, F3_1, F3_2, F3_3) → poligonoa24, f3, f3_1, f3_2, f3_3
  46. Polygon(G3, G3_1, G3_2, G3_3) → poligonoa25, g3, g3_1, g3_2, g3_3
  47. Polygon(H3, H3_1, H3_2, H3_3) → poligonoa26, h3, h3_1, h3_2, h3_3
  48. Polygon(I3, I3_1, I3_2, I3_3) → poligonoa27, i3, i3_1, i3_2, i3_3
  49. Polygon(A4, A4_1, A4_2, A4_3) → poligonoa28, a4, a4_1, a4_2, a4_3
  50. Polygon(B4, B4_1, B4_2, B4_3) → poligonoa29, b4, b4_1, b4_2, b4_3
  51. Polygon(C4, C4_1, C4_2, C4_3) → poligonoa30, c4, c4_1, c4_2, c4_3
  52. Polygon(D4, D4_1, D4_2, D4_3) → poligonoa31, d4, d4_1, d4_2, d4_3
  53. Polygon(E4, E4_1, E4_2, E4_3) → poligonoa32, e4, e4_1, e4_2, e4_3
  54. Polygon(F4, F4_1, F4_2, F4_3) → poligonoa33, f4, f4_1, f4_2, f4_3
  55. Polygon(G4, G4_1, G4_2, G4_3) → poligonoa34, g4, g4_1, g4_2, g4_3
  56. Polygon(H4, H4_1, H4_2, H4_3) → poligonoa35, h4, h4_1, h4_2, h4_3
  57. Polygon(I4, I4_1, I4_2, I4_3) → poligonoa36, i4, i4_1, i4_2, i4_3
  58. Polygon(D, D2, D3, D4) → black1, j, k, l, m
  59. Polygon(G, G2, G3, G4) → black2, n, p, q, r
  60. Polygon(A5, A5_1, A5_2, A5_3) → poligonoa37, a5, a5_1, a5_2, a5_3
  61. Polygon(B5, B5_1, B5_2, B5_3) → poligonoa38, b5, b5_1, b5_2, b5_3
  62. Polygon(C5, C5_1, C5_2, C5_3) → poligonoa39, c5, c5_1, c5_2, c5_3
  63. Polygon(D5, D5_1, D5_2, D5_3) → poligonoa40, d5, d5_1, d5_2, d5_3
  64. Polygon(E5, E5_1, E5_2, E5_3) → poligonoa41, e5, e5_1, e5_2, e5_3
  65. Polygon(F5, F5_1, F5_2, F5_3) → poligonoa42, f5, f5_1, f5_2, f5_3
  66. Polygon(G5, G5_1, G5_2, G5_3) → poligonoa43, g5, g5_1, g5_2, g5_3
  67. Polygon(H5, H5_1, H5_2, H5_3) → poligonoa44, h5, h5_1, h5_2, h5_3
  68. Polygon(I5, I5_1, I5_2, I5_3) → poligonoa45, i5, i5_1, i5_2, i5_3
  69. Polygon(A6, A6_1, A6_2, A6_3) → poligonoa52, a6, a6_1, a6_2, a6_3
  70. Polygon(B6, B6_1, B6_2, B6_3) → poligonoa53, b6, b6_1, b6_2, b6_3
  71. Polygon(C6, C6_1, C6_2, C6_3) → poligonoa54, c6, c6_1, c6_2, c6_3
  72. Polygon(D6, D6_1, D6_2, D6_3) → poligonoa49, d6, d6_1, d6_2, d6_3
  73. Polygon(E6, E6_1, E6_2, E6_3) → poligonoa50, e6, e6_1, e6_2, e6_3
  74. Polygon(F6, F6_1, F6_2, F6_3) → poligonoa51, f6, f6_1, f6_2, f6_3
  75. Polygon(G6, G6_1, G6_2, G6_3) → poligonoa46, g6, g6_1, g6_2, g6_3
  76. Polygon(I6, I6_1, I6_2, I6_3) → poligonoa48, i6, i6_1, i6_2, i6_3
  77. Polygon(H6, H6_1, H6_2, H6_3) → poligonoa47, h6, h6_1, h6_2, h6_3
  78. Polygon(B, C3, I3_3, B5) → black3, s, j_1, k_1, l_1
  79. Polygon(C, B3, H3_3, C5) → black4, c_4, b3_4, h3_4, c5_4
  80. Polygon(D5, F5_1, B2, C4) → black5, d5_4, f5_4, b2_4, c4_4
  81. Polygon(G5, I5_1, C2, B4) → black6, m_1, n_1, p_1, q_1
  82. If(t ≟ 1, 0, kopiay2) → y2
  83. If(t ≟ 1, 0, kopiay1) → y1
  84. If(t ≟ 1, 0, kopiaz3) → z3
  85. If(t ≟ 1, 0, kopiax2) → x2
  86. If(t ≟ 1, 0, kopiax1) → x1
  87. If(t ≟ 1, 0, kopiaz2) → z2
  88. If(t ≟ 1, 0, kopiax3) → x3
  89. If(t ≟ 1, 0, kopiay3) → y3
  90. If(t ≟ 1, 0, kopiaz1) → z1
  91. CircleArc(O, J, K) → r_1
  92. Translate(r_1, Vector[(0, 0, 4)]) → s_1
  93. Translate(r_1, Vector[(0, 0, -4)]) → t_1
  94. Vector((0, 1, 4), (-0.5, 1, 4)) → u
  95. Vector((0, 1, -4), (-0.5, 1, -4)) → v
  96. Rotate(s_1, ((-π)) / 2, yaxis) → k_2
  97. Translate(k_2, Vector[(8, 0, 0)]) → p_2
  98. Vector((-4, -1, 0), (-4, -1, -0.5)) → w
  99. Vector((4, -1, 0), (4, -1, -0.5)) → u_1
  100. Rotate(s_1, π / 2, xaxis) → q_2
  101. Rotate(q_2, π, yaxis) → r_2
  102. Translate(r_2, Vector[(0, 8, 0)]) → s_2
  103. Vector((0, -4, 1), (0.5, -4, 1)) → v_1
  104. Vector((0, 4, 1), (0.5, 4, 1)) → w_1
  105. Rotate(k_2, π, xaxis) → t_2
  106. Rotate(p_2, π, xaxis) → k_3
  107. Rotate(s_1, π, zaxis) → p_3
  108. Rotate(t_1, π, zaxis) → q_3
  109. Rotate(r_2, π, yaxis) → r_3
  110. Rotate(s_2, π, yaxis) → s_3
  111. Vector((0, 1, 4), (0.5, 1, 4)) → u_2
  112. Vector((4, -1, 0), (4, -1, 0.5)) → v_2
  113. Vector((0, 1, -4), (0.5, 1, -4)) → w_2
  114. Vector((0, -4, 1), (-0.5, -4, 1)) → j_2
  115. Vector((-4, -1, 0), (-4, -1, 0.5)) → l_2
  116. Vector((0, 4, 1), (-0.5, 4, 1)) → m_2
  117. Polygon((0, 0), (1, 0), 4) → poligonoa56
  118. Polygon((4, 0), (5, 0), 4) → poligonoa57
  119. Polygon((2, 0), (3, 0), 4) → poligonoa55
  120. Polygon((0, -2), (1, -2), 4) → poligonoa58
  121. Polygon((4, -2), (5, -2), 4) → poligonoa60
  122. Polygon((2, -2), (3, -2), 4) → poligonoa59
  123. CountIf(urdinak ≟ "blue", urdinak, koloreakzenbatzeko) → howmanybluecolored
  124. CountIf(zuriak ≟ "white", zuriak, koloreakzenbatzeko) → howmanywhitecolored
  125. CountIf(berdeak ≟ "Dark Green", berdeak, koloreakzenbatzeko) → howmanygreencolored
  126. CountIf(gorriak ≟ "red", gorriak, koloreakzenbatzeko) → howmanyredcolored
  127. CountIf(horiak ≟ "yellow", horiak, koloreakzenbatzeko) → howmanyyellowcolored
  128. CountIf(laranjak ≟ "orange", laranjak, koloreakzenbatzeko) → howmanyorangecolored
  129. Text(howmanygreencolored) → testua9
  130. Text(howmanyyellowcolored) → testua10
  131. Text(howmanybluecolored) → testua11
  132. Text(howmanywhitecolored) → testua12
  133. Text(howmanyorangecolored) → testua13
  134. Text(howmanyredcolored) → testua14
  135. Polygon((0, 0), (1, 0), 4) → poligonoa62
  136. Polygon((2, 0), (3, 0), 4) → poligonoa63
  137. Polygon((4, 0), (5, 0), 4) → poligonoa64
  138. Polygon((0, -2), (1, -2), 4) → poligonoa65
  139. Polygon((2, -2), (3, -2), 4) → poligonoa66
  140. Polygon((4, -2), (5, -2), 4) → poligonoa67
  141. Circle(Z, 0.025) → d_4
  142. Point(n_2) → N
  143. Point(j_3) → P
  144. Tangent(N, d_4) → l_3, m_3
  145. Intersect(d_4, l_3) → Q
  146. Tangent(P, d_4) → n_3, a_4
  147. Intersect(d_4, a_4) → R
  148. Segment(Q, N) → b_4
  149. Segment(R, P) → f_4
  150. Translate(j_3, (0, 0.5 / 3)) → h_4
  151. Translate(j_3, (0, 1 / 3)) → i_4
  152. Point(i_4) → S
  153. Point(h_4) → T
  154. CircleArc(Z2, S, T) → k_4
  155. Translate(k_4, (0, 0.5 / 3)) → p_4
  156. Translate(k_4, (0, -0.5 / 3)) → q_4
  157. Circle(Z, 0.2) → r_4
  158. Intersect(r_4, b_4) → U,
  159. Intersect(r_4, f_4) → V,
  160. CircleArc((x(Z) - 0.05, y(Z)), V, U) → s_4
  161. CircleArc(Z, Q, R) → t_4
  162. Point(h_4) → W
  163. Point(i_4) → J_1
  164. Segment(M, W) → g_4
  165. Point(edges1) → K_1
  166. Locus(L_1, K_1) → locus1
  167. Segment(W, J_1) → j_4
  168. Segment(J_1, L) → l_4
  169. Point(edges2) → M_1
  170. Locus(N_1, M_1) → locus2
  171. Point(edges4) → O_1
  172. Locus(P_1, O_1) → locus4
  173. Point(edges3) → Q_1
  174. Locus(R_1, Q_1) → locus3
  175. Segment(R, V) → n_4
  176. Segment(Q, U) → a_5
  177. Point(edges5) → S_1
  178. Locus(T_1, S_1) → locus5
  179. Segment(P, V) → t_3
  180. Segment(U, N) → b_5
  181. Point(edges6) → U_1
  182. Locus(V_1, U_1) → locus6
  183. Random(1, 18) → position
  184. If(solve ≟ true, "R", "X") → testua2
  185. If(solve ≟ true, "L", "X") → testua3
  186. If(solve ≟ true, "U", "Z") → testua4
  187. If(solve ≟ true, "D", "Z") → testua5
  188. If(solve ≟ true, "F", "Y") → testua7
  189. If(solve ≟ true, "B", "Y") → testua6