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

Формула программиста

основатель — Волосатов Евгений Витольдович
Поздравляю с 1 сентября! Система начисления Байтов работает.

Сокобан / Сокобан - Решалка - Мышка

  • Мы начинаем решать задачу по решению игры Сокобан с одним ящиком.
    Эта задача олимпиадного уровня на применение алгоритма поиска вширь.
    Главный герой - мышка Альфа, которая желает затолкать яблочко к себе в норку.
    Программу мы напишем за два урока.
    На первом уроке мы создадим вспомогательную функцию MoveAlfa(),
    которая подскажет мышке как попасть из одной клетки лабиринта в другую кратчайшим путём.
  • Дата отправки отчёта: 28 июня 2015 г.
  • Задание выполнено: за 1 час. 30 мин.
  • Чему научился: Немножко познакомился с очередью.
  • Что было сложным: Повторить не сложно, сложно будет всё это понять....
  • Комментарии: 1  for (int y = 0; y < h; y++)    for (int x = 0; x < w; x++)    зачем поменяли циклы местами? почему необходимо сначала по y считывать?
    2  string[] info = lines[0].Split(); - что обозначает 0 в квадаратных скобках? знак пробела? знак переноса строки в юникоде?
    3  map = new char[w, h]; - уже инициализировали map выше, зачем делать еще раз это со словом new? можно ли map = [w][h];?
    Вопросы есть еще, но пока не буду их задавать....
  • Оценка видео-уроку:
Отчёт от 1901 за Сокобан / Сокобан - Решалка - Мышка




Оцени работу

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

1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  Neverwinter 2  # Игра Сокобан / Сокобан - Решалка - Мышка / 2015-06-28 12:42

1. Местами поменяли по той причине, что с файла считываются сначала целая строка (у), а в ней - символы строки (х).
2. 0 означает - что мы берём первую (нулевую) считанную строку, в которой как раз записаны размеры поля.
3. Слово new создаёт массив,без него масси не создастся. Писать заново нужно потому чторазмер массива моет оказаться другим.


24. --
Олюшка
Олюшка
ответить
→  Neverwinter 2  # Игра Сокобан / Сокобан - Решалка - Мышка / 2015-06-28 12:44

Вот ты еще не решил не одной консольной задачи, а они бы тебе помогли, и вопросов было бы чуточку меньше, например: string[] info = lines[0].Split()  - там мы очень хорошо отработали подобную строчку, так что лучше не игнорируй Шарпа, он нам в помощь! :)



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





Если вы пришли без приглашения -
введите тысяча двадцать четыре (цифрами).
Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

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

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

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


Научился: Узнал об алгоритме поиска пути
Трудности: Узнав о принципе алгоритма, ничего сложного и не оказалось.
Замечаний нет.


Научился: Научился создавать путь для файла solution.txt
Я так понимаю решалка для сокобана в следующих уроках.