0 / 0 / 0
Регистрация: 10.03.2021
Сообщений: 6
1

Лабиринт 100x100

07.04.2022, 23:33. Показов 520. Ответов 3
Метки c++ (Все метки)

Не получается сделать лабиринт 100x100, не получается сделать границы
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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#include <iostream>
#include <string>
#include <fstream>
using namespace std;
 
int main()
{
   
    string maze[101][101];
    //srand(time(0));
    int i;
    int k,c,m;
    ofstream fout;
    fout.open("maze232.txt");
    for (i = 0; i <= 100; i++)  // i строка / k столбец
    {
    for (k = 0; k <= 100; k++)
    {
        if (i == 0 and k > 0)
        {
            maze[i][k] = "+";
        }
        
        if (i % 2 != 0 and k % 2 != 0)
        {
            maze[i][k] = "+";
        }   
        else if (i % 2 == 0 and k % 2 == 0)
        {
            maze[i][k] = ".";
        }
        else if (i % 2 == 0 and k % 2 != 0)
        {
            maze[i%50][k%50] = ".";
            maze[i%50][k%50] = "|";
        }
        else if (i % 2 != 0 and k % 2 == 0)
        {
            maze[i % 50][k % 50] = ".";
            maze[i % 50][k % 50] = "-";
        }
        fout << maze[i][k] << " ";
        cout << maze[i][k] << " ";     
    }  
    }       
}
вот правила лабиринта:
1) лабиринт n×n состоит из (2n+1) строк и (2n+1) столбцов;
2) пронумеруем строки от 1 до (2n+1) сверху вниз, столбцы – справа налево;
3) если клетка имеет нечетный номер строки и нечетный номер столбца, ставим ’+’;
4) если клетка имеет четный номер строки и четный номер столбца, ставим ’.’ – это комната;
5) если клетка имеет четный номер строки и нечетный номер столбца, ставим ’.’ или ’|’ – это горизонтальных проход между 6 )комнатами (открытый и заблокированный соответственно);
7)если клетка имеет нечетный номер строки и четный номер столбца, ставим ’.’ или ’-’ – это вертикальный проход между 8)комнатами (открытый и закрытый соответственно);
9) на периметре лабиринта не может быть открытых проходов.
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.04.2022, 23:33
Ответы с готовыми решениями:

Лабиринт
Имеется программа, проходящая лабиринт и выводит маршрут. Программа на вход принимает bool**...

Лабиринт
Помогите, пожалуйста, нарисовать лабиринт на всю консоль, чтобы смайлик двигался по лабиринту...

Как преобразовать лабиринт в граф
Всем привет! Возникла проблема, нужна помощь ! Дан лабиринт 5 5 0 0 0 -1 0 0 0 0 -1 0 ...

лабиринт
Всем привет. У меня проблема. В игре лабиринт получается, что каждый ход открывается новый...

лабиринт
дан лабиринт размером NxN. форма лабиринта записана в тектовом файле. стена обозначается М. даны...

3
3659 / 2996 / 828
Регистрация: 25.03.2012
Сообщений: 11,044
Записей в блоге: 1
23.07.2022, 21:13 2
and замени на &&
Ты точно язык Си или С++ учишь?
0
1475 / 932 / 282
Регистрация: 25.01.2019
Сообщений: 2,355
23.07.2022, 21:51 3
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
and замени на &&
Ты точно язык Си или С++ учишь?
Когда я как-то такое обнаружил в чём-то рабочем - я тож прифигел малость. Мне такое не по нраву, но оно есть. Alternative operator representations
0
3659 / 2996 / 828
Регистрация: 25.03.2012
Сообщений: 11,044
Записей в блоге: 1
23.07.2022, 22:08 4
Folian, ох, теперь я тоже припоминаю

Добавлено через 2 минуты
C++
1
2
3
4
5
maze[i%50][k%50] = ".";
maze[i%50][k%50] = "|";
и ниже
maze[i % 50][k % 50] = ".";
maze[i % 50][k % 50] = "-";
вот эти повторения присвоений что призваны делать? они же затирают предыдущую точку и не выводят её!
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.07.2022, 22:08
Помогаю со студенческими работами здесь

Лабиринт
#include &lt;iostream&gt; #include &lt;fstream&gt; #include &lt;conio.h&gt; #include &lt;time.h&gt; #include &lt;cmath&gt;...

Лабиринт с++
Есть код. только мне не понятен алгоритм который работает в bool PathExists(Labyrinth&amp; lab, int...

Лабиринт.
Добрый вечер, вот решил создать примитивный лабиринтик, создал, проблем не было, но тут пришла в...

Лабиринт
Вообщем у меня 2 проблемы: 1) Либирнт генерирует 2 раза 2) '8' ходит как хочит Поправте плз код...

Лабиринт
Помогите пожалуйста: Создать игру «Лабиринт». Игра состоит из 2 уровней (лабиринтов),...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru