Курсы по программированию

Формула программиста
основатель — Волосатов Евгений Витольдович
Вступай в Телеграм чат проекта | Обход блокировки
Игровой комплекс Сокобан - Введи код скидки

Шарики / Шарики. Поиск пути

  • Реализация самого сложного алгоритма:
    поиск кратчайшего пути для перемещения шарика.
  • Дата отправки отчёта: 23 января 2016 г.
  • Задание выполнено: за 4 час. 30 мин.
  • Чему научился: Научился использовать алгоритм "Волна" для нахождения кратчайшего пути для перемещения шарика.

  • Что было сложным: Увы, не все было понятно. Пока довольно сложно для меня. В середине ошибся в написании одного условия. Пришлось много времени потратить на поиск ошибки.

  • Комментарии: Хотел бы поделиться с курсантами записью алгоритм "Волна " в псевдокоде (взял из Википедии). Может быть, это кому-то поможет лучше понять этот алгоритм.

    Инициализация

    Пометить стартовую ячейку 0
    d := 0

    Распространение волны

    ЦИКЛ
      ДЛЯ каждой ячейки loc, помеченной числом d
        пометить все соседние свободные непомеченные ячейки числом d + 1
      КЦ
      d := d + 1
    ПОКА (финишная ячейка не помечена) И (есть возможность распространения волны)

    Восстановление пути

    ЕСЛИ финишная ячейка помечена
    ТО
      перейти в финишную ячейку
      ЦИКЛ
        выбрать среди соседних ячейку, помеченную числом на 1 меньше числа в текущей ячейке
        перейти в выбранную ячейку и добавить её к пути
      ПОКА текущая ячейка — не стартовая
      ВОЗВРАТ путь найден
    ИНАЧЕ
      ВОЗВРАТ путь не найден
  • Оценка видео-уроку:
Отчёт от 7645 за Шарики / Шарики. Поиск пути




Оцени работу

 
Сохранить страницу:

24. Олюшка
Олюшка
ответить
→  Александр Львович  # Микроигры / Шарики. Поиск пути / 2016-01-23 23:54

Александр, спасибо, отлично попрактиковался с новыми знаниями! Молодец! :)


2146. Иван
Иван
ответить
→  Александр Львович  # Микроигры / Шарики. Поиск пути / 2016-01-23 22:40

Спасибо за интересный отчет. Утащу информацию к себе в специальную папочку шпаргалок.


1. Евгений Волосатов
Евгений Волосатов
ответить
→  Александр Львович  # Микроигры / Шарики. Поиск пути / 2016-01-23 13:38

Правильный подход, молодец



Начинаем практику по языку C#




Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.


Научился: Реализовывать алгоритм перемещения шарика "Волна"."Волна"-алгоритм поска кратчайшего пути между двумя точками.
Трудности: Реализовать алгоритм
:)


Научился: "Волновым" это разве не "Поиск в ширину"? Который мы проходили на Сокобане. В общем в любом случае отработал поиск пути, надо учиться сразу писать if'ы чтобы выходил при некорректных условиях, и понимать какие и когда возникают!
Трудности: Долго пытался виндовыми Ножницами сделать скрин игры, когда в пути. Затем вспомнил про родной PrintScreen и сделал в два клика))
Эх а этот урок наоборот обрезан, осталось чуть-чуть и ждать уже невмоготу, уже так хочется всяких примочек понаделать, но себя останавливаю, чтобы досмотреть последний урок, а потом уже улучшать программу! Спасибо ещё раз Ольге (музе проекта), я по её наводке изменил размер шариков прямо в VS, и там же их немного подретушировал, поэтому теперь не игрулька, а Сказка! ;-)