Evident system of assembly of Rubik's Cube

© V.S.Dzhanmukhamedov, A.P.Hvastunov, A.A.Shalyto

Saint-Petersburg State University of Information Technologies, Mechanics and Optics

Project documentation (in Russian)
Executable program
Source code


In the given project application of automatic programming for creation of the open project visualizing assembly of Rubik's Cube is considered. The considered example is good that evidently represents the user such concepts of the theory of automata as conditions, transitions, entrance conditions and target influences. Therefore this example well approaches for initial acquaintance to automatic style of programming. In an example for functioning the program seven automata step by step collecting a cube are constructed. It is necessary to notice, that graphs of transitions of all automata are planar, that promotes their presentation.

For realization of the project language Visual C++ is chosen. Library MFC for creation of the interface of the program and library OpenGL for display of assembly of a cube to the screen were used. The project was tested on operating system Windows XP.

Process of development of the application has confirmed that fact, that automatic programming is expedient for applying when for difficult algorithm it is required formally and "is transparent" to describe its logic. Such description has allowed to create the application which became correct to work from the first. Hardly it would be possible, if authors began to write the program in the traditional way.