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

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

Восстановить пароль Регистрация
Другие темы раздела
C++ Конкатенация строк http://www.cyberforum.ru/cpp-beginners/thread619205.html
Должно быть консольное приложение. Очень простой вопрос, но сам что-то завис, и немогу найти что хочу. Значит так есть такой кусок кода hf=FindFirstFile("d:\\Auto\\*", &FindFileData); ///********************* А хочу так hf=FindFirstFile("d:\\Auto\\ /*сюда вставить переменную типа стринг*/ \\*", &FindFileData); Ну в общем чтобы можна было по папкам переходить.(Зайти в одну...
C++ Зачем оставлять переменные-члены класса закрытыми? Вот пишут,что нужно переменные - члены класса оставлять закрытыми, используя для их установки значений или возвращений значений, методы доступа. Но зачем так делать? http://www.cyberforum.ru/cpp-beginners/thread619193.html
C++ Перевод инфиксного выражения в постфиксное (обратная польская запись)
Всем привет! Надо с помощью стека на динамическом массиве реализовать перевод инфиксного выражения в постфиксное. (обратная польская нотация). с помощью алгоритма сортировочной станции. Кто не знает или забыл, что это такое, например: дано выражение (4+5)*7 45+7* - это обратная польская запись (постфиксное выражение) У меня почему-то не записываются операции в стек, в чем ошибка в...
C++ Выбор слова из массива
Есть массив: char *query=(char*)malloc(68); Он улетает на сервер и возвращается другим. Вот таким: HTTP/1.1 200 OK Server: nginx/1.1.14 Date: Wed, 04 Jul 2012 13:52:48 GMT Content-Type: text/html Content-Length: 7 Connection: keep-alive
C++ Struct и библиотека http://www.cyberforum.ru/cpp-beginners/thread619131.html
Здравствуйте! Есть два файла: cpp и заголофочный файл .h Подскажите пожалуйста как передать массив из структур в эту библиотеку? //cpp #include "bib.h" struct movies_t { string *title; } mine; int main ()
C++ double Если преобразовать double к char*, то какие байты будут отвечать за целую часть, а какие за дробную? подробнее

Показать сообщение отдельно
murderer
3175 / 1398 / 69
Регистрация: 06.10.2010
Сообщений: 3,017
05.07.2012, 13:48     Лабиринт
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
#include <iostream>
#include <conio.h>
 
#define width  79
#define height 25
 
char  wall[2]={219,0};
unsigned char  screen[width*height];
unsigned short front[width*height];
unsigned char  sd[96]={0,1,2,3,
                       0,1,3,2,
                       0,2,1,3,
                       0,2,3,1,
                       0,3,1,2,
                       0,3,2,1,
                       1,0,2,3,
                       1,0,3,2,
                       1,2,0,3,
                       1,2,3,0,
                       1,3,0,2,
                       1,3,2,0,
                       2,0,1,3,
                       2,0,3,1,
                       2,1,0,3,
                       2,1,3,0,
                       2,3,0,1,
                       2,3,1,0,
                       3,0,1,2,
                       3,0,2,1,
                       3,1,0,2,
                       3,1,2,0,
                       3,2,0,1,
                       3,2,1,0};
short way[4]={-width,1,width,-1};
 
int main()
{
    int i,j,k,l,m,n;
    //Создаём начальный шаблон лабиринта
    for(i=0;i<width*height;i++)
      screen[i]=1;
    j=height-2;
    do{
      i=width;
      k=j*width+1;
      do{
        screen[k]=255;
        k+=2;
        i-=2;
      }while(i>1);
      j-=2;
    }while(j>0);
    //Генерируем лабиринт
    front[0]        =(j+2)*width+1;
    screen[front[0]]=0;
    l=1;
    do{
      m=rand()%l;
      i=(rand()%24) << 2;
      k=i+3;
      do{
        n=way[sd[i]];
        j=front[m]+n;
        n=n+j;
        if(screen[n]==255)
        {
          screen[n]=0;
          screen[j]=0;
          front[l] =n;
          l++;
          goto _break;
        };
        i++;
      }while(i<=k);
      l--;
      front[m]=front[l];
      _break:;
    }while(l);
 
    k=0;
    for(j=height;j>0;j--)
    {
      for(i=width;i>0;i--)
        printf(screen[k++]?&wall[0]:" ");
      printf("\n");
    }
    getch();
    return 0;
}
 
Текущее время: 14:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru