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

Лабиринт с++ - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Проблема с массивом. Выводится только один элемент матрицы. http://www.cyberforum.ru/cpp-beginners/thread535288.html
Здравствуйте. Программа должна считывать данные из файла (матрицу 128х128), записывать их в двумерный массив и выводить на экран. Я столкнулась с проблемой того, что программа выводит лишь один...
C++ Заполнение массива структур из файла Здравствуйте появилась проблема - никак не могу найти, как заполнить массив структур из файла. Как заполнить файл я разобрался, а наоборот не получается. Вот пример как я заполнял файл :... http://www.cyberforum.ru/cpp-beginners/thread535280.html
не выводит результат C++ C++
int _tmain(int argc, _TCHAR* argv) { float x2, y2, z2, r, x1, y1, z1, s; if (x1<0) else if (y1<0) else if (z1<0) else if ( x2>0) else if ( y1>0) else if ( z2>0)
C++ Написать программу, которая находит сумму всех целых нечетных чисел в заданном диапазоне
Написать программу, которая находит сумму всех целых нечетных чисел в диапазоне, указанном пользователе. #include <iostream> using namespace std; int main () { int a ,b; int summ = 0;
C++ Выделение памяти системы http://www.cyberforum.ru/cpp-beginners/thread535277.html
Добрый день, нужно написать программу, которая выделяет всю память системы. Проблема в том, что при выделении определенного количества памяти программа крашится. подскажите что нужно изменить, чтобы...
C++ Итерация. не знаю как решить Вычислить (рис1) Вычисление прекратить,если(рис2) Подсчитать кол-во слагаемых. Буду благодарен за любую помощь. подробнее

Показать сообщение отдельно
villu
203 / 204 / 4
Регистрация: 06.08.2011
Сообщений: 600
Записей в блоге: 1
31.03.2012, 17:01
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
bool PathExists(Labyrinth& lab, int y1, int x1, int y2, int x2)
{
        lab[y1][x1] = false; // отмечаем клетку, потмоу что были на ней уже
 
        if (y1 == y2 && x1 == x2) // эта координата - выход
                return true;  // вернем true
                
        const struct {int y; int x;} dir[] = { // возможные направления для шага
                    {-1, 00}, // влево
                    {00, -1}, // вверх
                    {00, +1}, // вниз
                    {+1, 00}}; // вправо
                    
        const int steps = sizeof(dir) / sizeof(dir[0]); // количесвто возможных варинатов направленя 4
 
        for (int i = 0; i < steps; i++) // цикл по всем шагам; 4 
                if (lab[y1 + dir[i].y][x1 + dir[i].x] && // если координата доступна (не стена и мы на ней не были), можем на нее шагнуть 
                        PathExists(lab, y1 + dir[i].y, x1 + dir[i].x, y2, x2)) // ... и проверить
                        return true; // если найден выход, то завершаем вызов true
                        
        return false; // нет вариантов прохода лабиринта с этой координаты
}
Код немного модифицировал, добавил const int steps, чтоб было понятнее
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru