48078 (608452)

Файл №608452 48078 (Поиск кратчайшего пути в лабиринте)48078 (608452)2016-07-30СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла


АННОТАЦИЯ

Целью представленной работы является разработка программы “Поиск кратчайшего пути”, которая создает лабиринт и находит кратчайший путь его прохождения.

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

В данной работе приводятся диаграммы потоков данных, диаграммы состояния, диаграммы взаимодействия модулей. Доступным языком описывается методология создания программы.

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

1 Техническое задание

Введение

Полное название разработки ”Поиск кратчайшего пути”. Данная разработка предназначена для использования в учебных заведениях. Она выполняет нахождение кратчайшего пути между входом в лабиринт и его выходом. Также возможно использование для самопроверки решения, принятого человеком.

1.1 Основания для разработки

Данный проект разрабатывается на основании задания на курсовую работу, выданного преподавателем Сусловым С.В. студенту 4152 группы Заволоке А.А.

Наименование темы разработки “Поиск кратчайшего пути”.

1.2 Назначение разработки

Программа “Поиск кратчайшего пути” предназначается для нахождения кратчайшего пути между входом в лабиринт и его выходом.

1.3 Требования к программе

1.3.1 Требования к функциональным характеристикам

Для контакта пользователя с программой необходимо выполнение ряда функций:

создание сетки лабиринта;

добавление комнат в лабиринте;

удаление комнат в лабиринте;

добавление дверей в лабиринте ;

удаление дверей в лабиринте ;

ввод входа и выхода, между которыми необходимо найти кратчайший путь;

отображение решения;

сохранение лабиринта;

- загрузка сохраненного лабиринта

Входными данными являются комнаты и двери лабиринта, которые вводятся пользователем с клавиатуры при помощи передвигающегося курсора и нажатия определённой клавиши для комнат и для дверей.

Выходными данными является отображение на экране в графическом режиме лабиринта и кратчайшего пути.

1.3.2 Требования к надёжности

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

1.3.3 Условия эксплуатации

Программа устойчиво и корректно функционирует при нормальных условиях эксплуатации ПЭВМ. Дополнительных условий эксплуатации не требует.

1.3.4 Требования к составу и параметрам технических средств

Необходимы следующие технические средства:

1) ПЭВМ с тактовой частотой процессора 100 Mhz и выше.

Монитор, поддерживающий режим VGA;

8 Мбайт ОЗУ и выше;

Клавиатура.

1.3.5 Требования к информационной и программной совместимости

Программа должна корректно функционировать в ОС Windows’9x.

1.3.6 Требования к маркировке и упаковке

Готовое программное изделие предоставляется (хранится) на дискете 3.5 Дюйма. Требований к маркировке не предъявляется.

1.3.7 Требования к транспортировке и хранению

Хранить программный продукт нужно при нормальных условиях на дискете 3.5 дюйма, то есть дискета должна храниться в герметичной, сухой, не гнущейся коробке вдали от источников тепла, влаги и от магнита.

1.4 Требования к программной документации

Программная документация должна состоять из:

хорошо прокомментированного текста программы;

общего функционального описания;

краткого описания составляющих программу функций;

схем, иллюстрирующих проект и словесного их описания;

5) руководства пользователя.

1.5 Технико-экономические показатели

Создание бесплатной альтернативы существующим на сегодня программам подобного профиля;

Быстрота вычислений.

1.6 Стадии и этапы разработки

Техническое задание

Плановые сроки начала и окончания работы:

Начало: 15.02.07

Окончание: 01.03.07

Эскизный проект

Плановые сроки начала и окончания работы:

Начало: 01.03.07

Окончание: 22.03.07

Технический проект

Плановые сроки начала и окончания работы:

Начало: 22.03.07

Окончание: 12.04.07

Рабочий проект

Плановые сроки начала и окончания работы:

Начало: 12.04.07

Окончание: 17.05.07

Ввод в эксплуатацию

Плановые сроки начала и окончания работы:

Начало: 17.05.07

Окончание: 24.05.07

1.7 Порядок контроля и приёмки

Испытание должно проводиться совмесно с заказчиком и разработчиком в соответствии с “Программой и методикой испытаний “.

2. Эскизный проект

2.1 Контекстная диаграмма

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

При работе с данной программой необходимо наличие трёх главных компонентов : пользователь, компьютер и программа (рис.2.1).

лабиринт

      • Пользователь

Жёсткий диск


лабиринт

        • Результат


данные редактирования


Рисунок 2.1 - Контекстная диаграмма

Пользователь получает от программы результат – кратчайший путь в лабиринте, который получился после обработки введённых данных – координат дверей и комнат. Результат программы при необходимости может быть сохранён.

2.2 Словарь данных

Лабиринт – множество комнат, соединённых между собой дверьми.

Комната – символически изображенный квадрат, заданный в лабиринте.

Дверь –устройство, соединяющее комнаты.

Данные редактирования – изменение лабиринта, т.е. ввод комнат и дверей, а также их удаление.

Результат – Кратчайший путь в лабиринте.

2.3 Диаграмма состояний









Рисунок 2.3 – Диаграмма состояний

Состояние 0 – загрузка программы – начальное состояние, в котором находится программа после загрузки. В этом состоянии пользователь может ознакомиться с управлением или выйти из программы.

Состояние 1 – создание лабиринта – состояние, в котором формируется лабиринт.

Состояние 2 – ввод комнаты – в этом состоянии пользователь может ввести комнату.

Состояние 3 – ввод двери – в этом состоянии пользователь может ввести дверь.

Состояние 4 – удаление комнаты – в этом состоянии пользователь (при необходимости) может удалить существующую комнату.

Состояние 5 – удаление двери – в этом состоянии пользователь (при необходимости) может удалить существующую дверь.

Состояние 6 – сохранение лабиринта – пользователю предоставляется возможность сохранить лабиринт.

Состояние 7 – загрузка лабиринта – пользователю предоставляется возможность загрузить, ранее сохраненный, лабиринт.

2.4 Построение модели пользовательского интерфейса

Для удобства ввода, редактирования и удаления элементов лабиринта, необходимо создать удобный, дружественный интерфейс.

При запуске программы на экране появляется сетка, в которой будет вводиться лабиринт. В каждой клеточке может находиться комната или дверь. По сетке передвигается курсор, который управляется с помощью клавиш < > - вверх, < > - вниз, < > - вправо, < > - влево он определяет положение комнаты или двери. На экране постоянно присутствует меню подсказки, которое помогает пользователю ориентироваться. В нём указывается клавиши, с помощью которых пользователь может задать лабиринт. Например, при помощи клавиши происходит ввод комнаты, при этом комната отображается в виде точки зелёного цвета, при помощи клавиши происходит ввод двери, которая не рисуется а просто соединяет комнаты и представляет собой две перекрещивающиеся линии, т.е. можно соединять сразу несколько дверей в комнатах и рисовать лабиринт в трёх или в четырёх направлениях. При помощи клавиши можно редактировать лабиринт т. е. удалять вершины или рёбра.

После ввода лабиринта в левом верхнем углу экрана выдаётся приглашение: “Введите вход в лабиринт ” после чего ожидается выбор одной из комнат в лабиринте, с помощью клавиш управления курсром и клавиши , при этом выдаётся пиглашение: “Введите выход из лабиринта”. После выбора выхода программа выдаёт сообщение: “Кратчайший путь найден ” - в том случае, если он найден или “пути нет ” - если пути не существует. Если кратчайший путь найден, то он будет показан на графе в виде подсветки красным цветом. Далее предлагается выйти из программы путём нажатия клавиши или начать ввод нового лабиринта нажав при этом любую клавишу. При этом существует клавиша и соответственно для сохранения лабиринта или загрузки уже существующего.

3 Технический проект

3.1 Диаграмма потоков данных

Программа имеет 4 основных процесса, отражающие основные функции программы:

Координаты комнат и дверей



      • карта поля




        • Карта прохождения

      • карта поля


      • карта поля



Рисунок 3.1 – Диаграмма 1-го уровня


команда


координатыкомнаты



карта поля


координатыдвери



Характеристики

Тип файла
Документ
Размер
511,87 Kb
Тип материала
Учебное заведение
Неизвестно

Тип файла документ

Документы такого типа открываются такими программами, как Microsoft Office Word на компьютерах Windows, Apple Pages на компьютерах Mac, Open Office - бесплатная альтернатива на различных платформах, в том числе Linux. Наиболее простым и современным решением будут Google документы, так как открываются онлайн без скачивания прямо в браузере на любой платформе. Существуют российские качественные аналоги, например от Яндекса.

Будьте внимательны на мобильных устройствах, так как там используются упрощённый функционал даже в официальном приложении от Microsoft, поэтому для просмотра скачивайте PDF-версию. А если нужно редактировать файл, то используйте оригинальный файл.

Файлы такого типа обычно разбиты на страницы, а текст может быть форматированным (жирный, курсив, выбор шрифта, таблицы и т.п.), а также в него можно добавлять изображения. Формат идеально подходит для рефератов, докладов и РПЗ курсовых проектов, которые необходимо распечатать. Кстати перед печатью также сохраняйте файл в PDF, так как принтер может начудить со шрифтами.

Список файлов курсовой работы

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6508
Авторов
на СтудИзбе
302
Средний доход
с одного платного файла
Обучение Подробнее