Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Прохождение лабиринта - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Массивы.Из массива удалить последний из нечетных элементов http://www.cyberforum.ru/cpp-beginners/thread754253.html
программа запускается,но не хочет корректно работать,помогите пожалуйста #include "stdafx.h" #include "locale.h" void vod(int*a,int b) { int i; printf("Введите массив A\n",b);
C++ Редактирования двоичного файла С++ Ребят, вот такая задача... Пишу курсовую работу и столкнулся с такой вот проблемой... Рассажу подробно =)) У меня есть двоичный файл, откуда я считываю информацию, а именно: названия поезда и... http://www.cyberforum.ru/cpp-beginners/thread754247.html
Сортировка "расческой" C++
ребят,помогите пожалуйста с сортировкой расческой. нужен пример алгоритма и блок-схема. на гугл не отправляйте:)Избегайте "кричащего" выделения текста
C++ Как выводить русский текст?
помогите кто нибудь с выводом русского текста в этой программе пытался воспользоваться решениями с форума, но видимо я конченый дегенерат так и не смог ничего сделать. //простая программа ведения...
C++ Странные типы http://www.cyberforum.ru/cpp-beginners/thread754192.html
Всем добрый день. Хотелось бы узнать ответы на 2 вопроса: 1. Шаблонный тип - тип использующийся как шаблон для нескольких типов, а шаблоны типа - несколько шаблонных типов использующихся одним...
C++ Поиск последовательности элементов максимальной длины в массиве Помогите пожалуйста написать программу, вот условия программы...Даны два массива. Напишите программу, которая находит такую последовательность элементов максимальной длины, которая содержится и в... подробнее

Показать сообщение отдельно
strange_man
9 / 9 / 0
Регистрация: 17.05.2012
Сообщений: 118

Прохождение лабиринта - C++

06.01.2013, 19:14. Просмотров 3553. Ответов 9
Метки (Все метки)

Имеется лабиринт.
Нужно составить алгоритм, по которому программа найдет выход из лабиринта.
мой начальный код. работает нормально, хоть и слишком незамысловатый метод.
это не слишком "по-быдловски" ?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
void mazeTraverse (char maze[][12], const int *w, const int *h, int *x, int *y)
{
    //w и h - соответственно ширина и высота; x,y - координаты
    printMaze (maze, w, h); 
    maze[*y][*x] = 'x';
 
    if ((*x < *w - 1) && (*y < *h - 1))
    {
        if ((maze[*y][*x+1] != '#') && (maze[*y][*x+1] != 'x'))
            (*x)++;
        else if ((maze[*y+1][*x] != '#') && (maze[*y+1][*x] != 'x'))
            (*y)++;
        else if ((maze[*y-1][*x] != '#') && (maze[*y-1][*x] != 'x'))
            (*y)--;
        else if ((maze[*y][*x-1] != '#') && (maze[*y][*x-1] != 'x'))
            (*x)--;
        mazeTraverse (maze, w, h, x, y);
    }
    else
    {
        printMaze (maze, w, h);
        cout << "\nЛабиринт пройден!";
    }
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru