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

Проблема сравнения данных в массиве с другими данными - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Поиск в векторе http://www.cyberforum.ru/cpp-beginners/thread350115.html
Есть вектор v: v = 0; v = 1; v = 2; v = 4; v = 6; Как с помощью алгоритма find узнать есть ли в векторе число 8, между индексами от 0 до 2(включительно), то есть от v до v(включительно)?
C++ Программа дискретная математика Вообщем такая задача: нужно написать программу, которая выводит на экран комбинации из 10ти элементов множества, тоесть "10!" например: А1={1} A2={2} A3={3} A4={1,2} A5={1,3} и так для 10ти... http://www.cyberforum.ru/cpp-beginners/thread350105.html
C++ Задать аргументу значение по умолчанию
Идея такова: есть у меня однонаправленный линейный список и конструктор для инициализации его значений: ListItem(string &f,int y, int a, string &g) { //различные данные узла списка...
Конструкторы template класса C++
задача собственно написать класс, который создает массив произвольного типа и хранит указатель на него(это в упрощенном варианте) - вроде просто а уже споткнулся заголовок класса: template<class T>...
C++ как насыпать программу в Microsoft Visual Studio... http://www.cyberforum.ru/cpp-beginners/thread350063.html
как насыпать программу в Microsoft Visual Studio... Даны целые числа (x1,x2,x3,y1,y2,y3) найти площадь треугольника (x1,x2,x3,y1,y2,y3)
C++ Не нормально зацикливается Do Нужно написать процедуру, которая сравнивает каждое слово из текстового файла с каждым словом из словаря (слова уже забиты в список) и переписывает весь текстовый файл в web-страницу, выделяя слова,... подробнее

Показать сообщение отдельно
Bearserker
0 / 0 / 0
Регистрация: 10.09.2011
Сообщений: 5
10.09.2011, 21:50  [ТС]
Просьба не пугаться =) Это экспериментальная площадка =)
Развернуть код
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
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
// XO.cpp: создаем Крестики-нолики .
//
 
#include "stdafx.h"
#include <iostream> // cin, cout
#include <clocale>  // поддержка русского языка
#include <conio.h>  // _getch()
#include <stdlib.h> // поддержка функции очистки экрана system("cls")
 
using namespace std;
 
int x_const=3;
int y_const=3;
char act;
int ch;
int z;
int x=1;
int y=1;
int x_old;
int y_old;
char map[3][3];
char map_full[3][3];
int i;
int j;
char gamer;
char gamer1 = 'X';
char gamer2 = 'O';
 
inline void plus (int& x, int& y)
{
    
    if (x==x_const)
    {
        x=x_const-1;
    }
    if (y==y_const)
    {
        y=y_const-1;
    }
    if (x<0)
    {
        x=0;
    }
    if (y<0)
    {
        y=0;
    }
 
    //z=' ';
}
 
inline void map_move (int& x, int& y)
{
    plus (x, y);
    map [x][y] = gamer; 
}
 
 
int main()
{
    setlocale (LC_CTYPE,"Russian");
    
    cout << "Введите кто первый ходит Х или О?\n";
 
        act = _getch();
        ch = static_cast<int>(act);
 
        //cout << ch;
        //_getch();
 
 
        switch (ch)
        {
 
        case -32:
            break;
 
        case 120:
            gamer = gamer1;
            break;
 
        case -27:
            gamer = gamer1;
            break;
 
        case 111:
            gamer = gamer2;
            break;
 
        case -82:
            gamer = gamer2;
            break;
        }
 
 
    for (i=0; i<x_const; i++)
    {
        for (j=0; j<y_const; j++)
        {
            map[i][j]=' ';
            map_full[i][j]=' ';
        }
    }
 
map[x][y] = gamer;
 
while (1)
{
    system("cls");
    cout <<"Координаты х="<<x<<", у="<<y<<"\n";
 
    for (i=0; i<x_const; i++)
    {
        for (j=0; j<y_const; j++)
        {
            cout << map[i][j];
        }
    cout << "\n";
    }
 
    act = _getch();
    ch = static_cast<int>(act);
 
    //cout << ch;
    //_getch();
 
 
    switch (ch)
    {
    case -32: // от двойного вывода на экран
        break;
 
    case 27:
            exit(0);
        break;
 
    case 80:
        map [x][y] = ' ';
        x_old=x;
        x++;
        map_move(x, y);
        break;
 
    case 72:
        map [x][y] = ' ';
        x_old=x;
        x--;
        map_move(x, y);
        break;
 
    case 75:
        map [x][y] = ' ';
        y_old=y;
        y--;
        map_move(x, y);
        break;
 
    case 77:
        map [x][y] = ' ';
        y_old=y;
        y++;
        map_move(x, y);
        break;
 
    case 13:
        if ((map_full [x_old][y_old] == gamer1) && (map_full [x_old][y_old] == gamer2))
        {
            cout << "Сюда ставить уже нельзя\n";
            _getch();
        } 
        else
        {
            map_full[x_old][y_old] = gamer;
            
            cout << "Запомнил\n";
            
            if (gamer == gamer1)
            {
                gamer = gamer2;
            } 
            else
            {
                gamer = gamer1;
            }
 
            _getch();
        }
        break;
         
    }
 
 
}
 
 
 
    return 0;
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru