|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
17.03.2012, 16:08 | #1 |
Регистрация: 17.03.2012
Сообщений: 5
|
Лабиринт рекурсией!
Как уже догадались мне требуется помощь с задачкой с названием "Путник в лабиринте".
В общем дал наш преподаватель нам на паре эту задачку, которую мы не смогли решить. Тогда он написал нам её решение доске и сказал, что она рабочая. Когда я пришел домой и ввел её в билдер, то понял что она с ошибками, которые мне не удалось исправить. На следующей паре я обнаружил, что не у кого из моих однокурсников она получилась. Я сказал нашему преподу что она не рабочая. Тогда он начал спорить со мной о её работоспособности. В итоге он разозлился и сказал, что если она у меня получится он ставит мне 2 за практику(( Я считаю он не прав! НУ так ладно просто найти ошибке в задаче, так он мне её усложнил. Он сказал чтоб я еще и нашёл самый короткий путь и вывести его. (ну я так думаю координаты шага или любой дрогой способ) Ну а условие задачи звучит так: Задана матрица 12х12 Если 1-прохода нет, если 0 проход есть. Координаты входа и выхода задаются. Найти самый короткий маршрут. Вот его вариант, введенный с фотографии доски: Код:
Пожалуйста помогите с рабочей версией, только не сильно заумной т.к. мне её ещё и объяснять её. Последний раз редактировалось antragog; 17.03.2012 в 17:15. |
17.03.2012, 16:29 | #2 |
Сама себе режиссер
Старожил
Регистрация: 27.04.2007
Сообщений: 3,365
|
Во-первых, желательно было написать сюда ошибки, которая она вам выдает.
Во-вторых, проверьте, насколько внимательно вы списали с фотографии. В-третьих, мало списать с доски, надо еще и головой пользоваться. Почему тут if (x=fi&&y=fj) стоит знак присвоения вместо знака равенства? Что это за конструкция if (a[x-1][y]==0 Step) (x-1,y);? Тут скобка должна быть в другом месте if (a[x-1][y]==0) Step(x-1,y); Это пока что на первый взгляд. Ошибки-опечатки, которые вы сам должны были заметить, не пеняя на препода.
Если я вас напрягаю или раздражаю, вы всегда можете забиться в угол и поплакать
|
17.03.2012, 17:15 | #3 |
Регистрация: 17.03.2012
Сообщений: 5
|
Он выводит ошибку в строке exit()
Голову я и так подключал. ЩАс я сохранил код который я передал, программа начала запускаться, но віводит "no" Я бы хотел у вас узнать что это за не понятные команды, точнее как они действуют, exit() и getchar() Последний раз редактировалось antragog; 17.03.2012 в 17:17. |
17.03.2012, 17:20 | #4 |
Сама себе режиссер
Старожил
Регистрация: 27.04.2007
Сообщений: 3,365
|
exit() - выход из программы
getchar() - для того, чтобы консольное окно не закрылось. Ожидаание нажатия клавиши в данном контексте. "no" будет выводить в любом случае.
Если я вас напрягаю или раздражаю, вы всегда можете забиться в угол и поплакать
|
17.03.2012, 18:13 | #5 |
Регистрация: 17.03.2012
Сообщений: 5
|
Это я и так понял. Если бы знал решение проблемы, не обращался за помощью к вам - знатокам! Для этого я и создал эту тему, чтоб вы помогли мне с кодом.
|
17.03.2012, 19:03 | #6 |
Сама себе режиссер
Старожил
Регистрация: 27.04.2007
Сообщений: 3,365
|
Если бы вы объяснили проблему, то вам бы кто-нибудь помог. Я вот до сих пор не поняла, в чем у вас проблема. Функции, которые вы просили, я описала. Что теперь не так?
Если я вас напрягаю или раздражаю, вы всегда можете забиться в угол и поплакать
|
17.03.2012, 19:49 | #7 | |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
По-моему в функцию как минимум координаты финиша должны передаваться, а не только старта.
Цитата:
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. Последний раз редактировалось Alex11223; 17.03.2012 в 19:54. |
|
17.03.2012, 22:51 | #8 | |
Регистрация: 17.03.2012
Сообщений: 5
|
Цитата:
Исходник моей задачи : Код:
Последний раз редактировалось ACE Valery; 18.03.2012 в 01:16. |
|
17.03.2012, 23:41 | #9 | |||
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Цитата:
Цитата:
Цитата:
UPD: ой, она вообще не ищет, а только его существование. Не знаю как это тут изменить, я A*/алгоритм Дийкстры и волновой алгоритм для этого использовал. Вот хорошая статья http://www.policyalmanac.org/games/a...torial_rus.htm, по первому могу на Паскале программу показать. А отобразить просто: в массиве путь обозначить другими числами и вывести этот массив (только х и у не перепутай), можно цвет изменить еще. И используйте тег [CODE] (значок # ) для сохранения форматирования и подсветки кода в сообщении. Кнопка Правка снизу справа.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. Последний раз редактировалось Alex11223; 17.03.2012 в 23:51. |
|||
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Лабиринт | keng | Помощь студентам | 9 | 14.09.2011 06:34 |
Лабиринт. | ValinRam | Помощь студентам | 1 | 01.05.2011 08:47 |
Лабиринт | GBTA | Общие вопросы C/C++ | 2 | 08.07.2010 12:03 |
Лабиринт | Claster | Помощь студентам | 1 | 02.03.2009 11:41 |