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

Немогу разобраться в коде программы - C++

Восстановить пароль Регистрация
 
rigals963
0 / 0 / 0
Регистрация: 25.12.2013
Сообщений: 5
25.12.2013, 13:07     Немогу разобраться в коде программы #1
Доброго времени суток!
Помогите разобраться в коде программы нужно написать, что значит каждая строка кода.

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
 #include <iostream>
 #include <iomanip>
 #include <windows.h>
 using namespace std;
 
 void show(int vagon)
 {
 switch(vagon)
 {
 case 0: cout<<"==="; break;
 case 1: cout<<"[ ]"; break;
 case 2: cout<<"[*]"; break;
 case 3: cout<<" | "; break; 
 } 
 }
 
 int main()
 {
 system("mode con cols=130 lines=45");
 srand((unsigned) time(NULL));
 int N, *right, *left, *tupik, i, j, kol_left = 0, kol_tupik = 0, kol_right = 0;
 
 cout<<"Set the number of wagon: "<<endl;
 cin>>N;
 //[ ] - белый,[*] - черный 
 right = new int[N];
 left = new int[N]; 
 tupik = new int[N * 2];
 
 for (i = 0; i < N; i++)
 {
 left[i] = 0;
 right[i] = 1;
 tupik[i] = 3;
 }
 i = 0;
 cout<<"Specify the number of the black wagon: ";
 while(i != N / 2)
 {
 cout<<"Remaining:"<<N / 2 - i<<endl;
 cin>>j;
 //j++;
 if (right[j - 1] != 2 && (j - 1) < N && j != 1) {right[j - 1] = 2; i++;}
 else cout<<"Incorrectly!";
 } 
 system("pause"); 
 system("cls");
 
 while(kol_left != N+1) 
 {
 for (i = 0; i < N; i++)
 show(left[i]);
 cout<<" X ";
 for (i = 0; i < N; i++)
 show(right[i]);
 for (i = N-1; i >= 0; i--)
 {
 cout<<endl<<setw(N * 3 + 3);
 show(tupik[i]); 
 }
 if (tupik[kol_tupik - 1] != left[kol_left - 1] && (tupik[kol_tupik - 1] == 1 || tupik[kol_tupik - 1] == 2)) {left[kol_left] = tupik[kol_tupik - 1]; tupik[kol_tupik - 1] = 3; kol_left++; kol_tupik--;}
 else if (right[kol_right] != left[kol_left - 1]) {left[kol_left] = right[kol_right]; right[kol_right] = 0; kol_left++; kol_right++;}
 else {tupik[kol_tupik] = right[kol_right]; right[kol_right] = 0; kol_tupik++; kol_right++;}
 system("pause");
 system("cls");
 }
 cout<<"All true!"<<endl;
 system("pause");
 }
также интересно почему в строке while(kol_left != N+1) выражение сравнивают не c N вагонов а с N+1 (для чего это нужно)

Ребят, помогите пожалуйста.Спасибо
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.12.2013, 13:07     Немогу разобраться в коде программы
Посмотрите здесь:

C++ Немогу разобраться в строчке кода!
C++ Немогу разобраться с директивами
Немогу разобраться с условием C++
C++ Немогу разобраться
Помогите разобраться в коде программы для переворачивания списка (код маленький) C++
немогу разобраться с переменной C++ C++
C++ Немогу разобраться с кодом
Не могу разобраться в коде. Некорректный результат работы программы C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 11:29. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru