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

Объясните пожалуйста ход работы программы - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Функция слияния двух строк и функция подсчёта предложений в строке http://www.cyberforum.ru/cpp-beginners/thread168599.html
Определить класс-строку. В класс включить два конструктора: для определения класса строки строкой символов и путем копирования другой строки (объекта класса строки). Предусмотреть функции слияния...
C++ системный стринг и обычный. Здравствуйте.. такая проблема: из текстбокса получаю системный стринг..его нужно преобразовать в char*, а потом ,соответственно, наоборот..подскажите пожалуйста, где найти эти функции и как они... http://www.cyberforum.ru/cpp-beginners/thread168571.html
C++ char s[100] or string s = int a[100]
Сопсна нужна помощь, и буду очень благодарен если кто-то поможет. Дается строка(string s или char s, в требованиях не указано, но лучше строка(предпочтения препода известны)), строка состоит из...
C++ Товары магазина
Информация о продаже товаров подготовлена по следующему макету: номер магазина; номер секции; номер чека; наименование товара; артикул товара; цена товара; количество то- вара; дата продажи....
C++ Запишите программу, которая выводит значение целой переменной 25 раз http://www.cyberforum.ru/cpp-beginners/thread168518.html
Запишите программу, которая выводит значение целой переменной 25 раз
C++ запишите программу что выводит запишите программу что выводит из формулы подробнее

Показать сообщение отдельно
PointsEqual
ниначмуроФ
836 / 520 / 33
Регистрация: 12.10.2009
Сообщений: 1,915
23.09.2010, 17:49
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
#include<iostream>
#include<windows.h>
 
using namespace std;
HANDLE console = GetStdHandle(STD_OUTPUT_HANDLE); //получаем дескриптор консоли
 
const int Y = 20, X = 30;//размер картинки
 
int a[Y][X] = {              1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,
                                1,1,1,1,2,0,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,0,2,1,1,1,1,
                                1,1,1,1,2,0,0,0,2,2,1,1,1,1,1,1,1,1,1,1,2,2,0,0,0,2,1,1,1,1,
                                1,1,1,1,2,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,0,0,0,0,0,2,1,1,1,1,
                                1,1,1,1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,1,1,1,1,
                                1,1,1,1,2,0,0,0,0,0,2,2,2,2,0,0,2,2,2,2,0,0,0,0,0,2,1,1,1,1,
                                1,1,1,1,2,0,0,0,2,2,3,3,3,3,0,0,3,3,3,3,2,2,0,0,0,2,1,1,1,1,
                                1,1,1,1,2,0,2,2,3,3,0,0,0,0,0,0,0,0,0,0,3,3,2,2,0,2,1,1,1,1,
                                1,1,1,1,2,2,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,2,2,1,1,1,1,
                                1,1,1,1,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,1,1,1,1,
                                1,1,1,3,3,0,0,0,0,0,4,4,4,0,0,0,0,0,4,4,4,0,0,0,0,3,3,1,1,1,
                                1,1,1,3,3,0,0,0,0,0,4,4,4,0,0,0,0,0,4,4,4,0,0,0,0,3,3,1,1,1,
                                1,1,1,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,1,1,1,
                                1,1,1,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,1,1,1,
                                1,1,1,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,1,1,1,
                                1,1,1,3,3,0,0,0,0,0,0,0,2,2,0,0,2,2,0,0,0,0,0,0,0,3,3,1,1,1,
                                1,1,1,1,3,3,0,0,0,0,0,0,0,2,2,2,2,0,0,0,0,0,0,0,3,3,1,1,1,1,
                                1,1,1,1,1,1,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,1,1,1,1,1,1,
                                1,1,1,1,1,1,1,1,3,3,0,0,0,0,0,0,0,0,0,0,3,3,1,1,1,1,1,1,1,1,
                                1,1,1,1,1,1,1,1,1,1,3,3,3,3,3,3,3,3,3,3,1,1,1,1,1,1,1,1,1,1 };
 
inline void paint (int y, int x)
{
        COORD coord;//класс COORD имеет 2 поля - для оси х и для оси у, нужен для установления курсора
        coord.Y = y; coord.X = x;
        SetConsoleCursorPosition(console,coord); //установить курсор на координату (coord.x,coord.y)
        SetConsoleTextAttribute(console, FOREGROUND_GREEN|FOREGROUND_RED|FOREGROUND_BLUE);//установить цвет фона, текста
        cout<<" ";
}
 
void colour_area (int y, int x)//рекурсивеая функция, которая отмечает(стирает) пройденные (белые) клетки
{
        Sleep (20);
        //walls
        if (a[y][x]) return;//если клетку уже прошли(!=0) или если это  клетка не белого цвета то выходим из функции
 
        //colour
        a[y][x] = 5;//если не прошли то помечаем текущую клетку как пройденную(заменяем 0 на 5)
        paint (y, x);
 
        //изменяя координаты проходим так каждую клетку
        colour_area (y-1, x);
        colour_area (y, x+1);
        colour_area (y+1, x);
        colour_area (y, x-1);
}
 
int main ()
{
        int y, x;
        COORD coord = {24,7};//начальная позиция
 
 
        for(int i=0;i<Y;i++) {//цикл по всей картинке
                for(int j=0;j<X;j++) {//цикл по всей картинке
                        switch(a[i][j]) {
                                case 4: SetConsoleTextAttribute(console, BACKGROUND_INTENSITY|BACKGROUND_BLUE); cout<< " "; break; //прорисовка картинки
                                case 3: SetConsoleTextAttribute(console, BACKGROUND_INTENSITY|BACKGROUND_RED|BACKGROUND_GREEN); cout<< " "; break;//прорисовка картинки
                                case 2: SetConsoleTextAttribute(console, BACKGROUND_INTENSITY|BACKGROUND_RED); cout<< " "; break;//прорисовка картинки
                                case 1: SetConsoleTextAttribute(console, FOREGROUND_GREEN|FOREGROUND_RED|FOREGROUND_BLUE); cout << ' '; break;//прорисовка картинки
                                case 0: SetConsoleTextAttribute(console, BACKGROUND_INTENSITY|BACKGROUND_RED|BACKGROUND_GREEN|BACKGROUND_BLUE); cout<<" "; break;//прорисовка картинки
                        }
                } cout << '\n';
        }
 
        y = coord.Y; x = coord.X;
        colour_area (y, x);//удаление белого фона
 
}
Добавлено через 55 секунд
вот так можно глаз ей удалить

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
int a[Y][X] = {          1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,
                                1,1,1,1,2,0,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,0,2,1,1,1,1,
                                1,1,1,1,2,0,0,0,2,2,1,1,1,1,1,1,1,1,1,1,2,2,0,0,0,2,1,1,1,1,
                                1,1,1,1,2,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,0,0,0,0,0,2,1,1,1,1,
                                1,1,1,1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,1,1,1,1,
                                1,1,1,1,2,0,0,0,0,0,2,2,2,2,0,0,2,2,2,2,0,0,0,0,0,2,1,1,1,1,
                                1,1,1,1,2,0,0,0,2,2,3,3,3,3,0,0,3,3,3,3,2,2,0,0,0,2,1,1,1,1,
                                1,1,1,1,2,0,2,2,3,3,0,0,0,0,0,0,0,0,0,0,3,3,2,2,0,2,1,1,1,1,
                                1,1,1,1,2,2,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,2,2,1,1,1,1,
                                1,1,1,1,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,1,1,1,1,
                                1,1,1,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,0,0,0,0,3,3,1,1,1,
                                1,1,1,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,0,0,0,0,3,3,1,1,1,
                                1,1,1,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,1,1,1,
                                1,1,1,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,1,1,1,
                                1,1,1,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,1,1,1,
                                1,1,1,3,3,0,0,0,0,0,0,0,2,2,0,0,2,2,0,0,0,0,0,0,0,3,3,1,1,1,
                                1,1,1,1,3,3,0,0,0,0,0,0,0,2,2,2,2,0,0,0,0,0,0,0,3,3,1,1,1,1,
                                1,1,1,1,1,1,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,1,1,1,1,1,1,
                                1,1,1,1,1,1,1,1,3,3,0,0,0,0,0,0,0,0,0,0,3,3,1,1,1,1,1,1,1,1,
                                1,1,1,1,1,1,1,1,1,1,3,3,3,3,3,3,3,3,3,3,1,1,1,1,1,1,1,1,1,1 };
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru