УНИВЕРСИТЕТ ИТМО
Кафедра «Технологии программирования»



Главная

Новости
 Новости науки
 Важное
 Почетные доктора
 Инновации
 Культура
 Люди
 Разное
 Скартел-Yota
 Стрим
 Смольный
Учебный процесс
 Образование
 Дипломы
 Курсовые проекты
 Лабораторные работы
 Учебные курсы
 Визуализаторы
 Unimod-проекты
 Семинары
 Стипендии
Наука
 События и факты
 Госконтракты
 Статьи
 Диссертации
 Книги
 Презентации
 Свидетельства
 Сотрудничество
Исследования
 Автоматы
 Верификация
 Биоинформатика
 Искусственный интеллект
 Генетические алгоритмы
 Движение
 UniMod
 Роботы и агенты
 Нейронные сети
 ФЦП ИТМО-Аалто
 Разное

О нас
 Премии
 Сертификаты и дипломы
 Соревнования по программированию
 Прорыв
 Автографы
 Рецензии

Беллетристика
 Мотивация
 Мысли
Медиа
 Видео
 Фотографии
 Аудио
 Интервью

English
 Home

 Articles
 Posters
 Automata-Based Programming
 Initiatives
 Projects
 Presentations
 UniMod
 UniMod Projects
 Visualizers


Поиск по сайту

Яndex



   Главная / Курсовые проекты / Наглядная система сборки Кубика Рубика (версия для печати)


Наглядная система сборки Кубика Рубика



© В.С. Джанмухамедов, А.П. Хвастунов, А.А. Шалыто

Санкт-Петербургский государственный университет информационных технологий, механики и оптики

Проектная документация
Исполняемая программа
Исходные тексты

Аннотация

В данном проекте рассматривается применение автоматного программирования для создания открытого проекта, визуализирующего сборку Кубика Рубика. Рассматриваемый пример хорош тем, что наглядно представляет пользователю такие понятия теории автоматов как состояния, переходы, входные условия и выходные воздействия. Поэтому этот пример хорошо подходит для первоначального знакомства с автоматным стилем программирования. В примере для функционирования программы построено семь автоматов, пошагово собирающих кубик. Следует заметить, что графы переходов всех автоматов являются планарными, что способствует их наглядности.

Для реализации проекта выбран язык Visual С++. Использовалась библиотека MFC для создания интерфейса программы и библиотека OpenGL для отображения сборки кубика на экране. Проект тестировался на операционной системе Windows XP.

Процесс разработки приложения подтвердил тот факт, что автоматное программирование целесообразно применять в тех случаях, когда для сложного алгоритма требуется формально и «прозрачно» описать его логику. Такое описание позволило создать приложение, которое стало правильно работать с первого раза. Вряд ли бы это удалось, если бы авторы стали писать программу традиционным путем.




© 2002—2024 По техническим вопросам сайта: alexvatyan@gmail.com