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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Серегаа
1 / 1 / 0
Регистрация: 26.04.2012
Сообщений: 24
#1

нужно проверять переменную которая последней изменилась - C++

04.06.2012, 20:17. Просмотров 295. Ответов 2
Метки нет (Все метки)

смысл таков, мне нужна проверка для числовых переменных у меня их 6, цель узнать какая изменилась последней, с той и выполнить определенные действия
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.06.2012, 20:17     нужно проверять переменную которая последней изменилась
Посмотрите здесь:

Нужно проверять наличие файла по маске - C++
Необходимо проверять наличие файла по маске пишу так int *fp; if ((fp = fopen('c:\autoexec.bat', 'r')) != NULL ) printf...

Стек (связный список). Нужно ли проверять на пустоту? - C++
Всем добра, у меня к Вам есть парочка вопросов о стеке, буду благодарен за помощь. Передо мной стояла задача: 1) Инициализировать...

Написать функцию, которая будет проверять является ли аргумент точным квадратом - C++
Мне нужно написать функцию которая будет выдавать точный квадрат числа,и компилятор выдаёт такую ошибку : Ошибка 1 error C2668: sqrt:...

Написать программу, которая будет выбирать слова с предложения и проверять: если есть слово буквы которого не повторяются в его пределах - C++
Имеется строка char или string (без разницы). Нужно написать программы которая будет выбирать слова с предложения и проверять: если есть...

Напишите функцию, которая возвращает значение полученное из первой и последней цифры числа - C++
Всем привет! Вот лаба из универа. HELP!! 1) Напишите функцию, которая принимает в качестве параметра натуральное значение n, по...

Напишите процедуру, которая выводит на экран в столбик все цифры переданного ей числа, начиная с последней - C++
1) Напишите процедуру, которая выводит на экран в столбик все цифры переданного ей числа, начиная с последней 2) Напишите процедуру...

Написать программу, которая по последней цифре числа позволяет определить последнюю цифру его квадрата - C++
13 Написать программу, которая по последней цифре числа позволяет определить последнюю цифру его квадрата. Использовать оператор выбора...

Нужно сделать переменную статической - C++
Доброго времени суток всем. У меня вот какая проблема: создан класс множество. Перегружен оператор + чтоб добавлять элементы. Но вот при...

Как ввести переменную, которая включает ряд чисел? - C++
Привет всем! Я учу С++ по видеоурокам самостоятельно. Написал первый простой код: #include "ttmath\ttmath.h" #include <iostream> ...

Как задать переменную в C++ которая принимает комплексное значение? - C++
Здравствуйте. Как объявить переменную, которая потом при расчетах принимает комплексный вид?


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Andrey.K
342 / 263 / 15
Регистрация: 14.11.2010
Сообщений: 482
04.06.2012, 20:27     нужно проверять переменную которая последней изменилась #2
Создай массив посещений. bool masVisit[6]; У тебя есть массив из твоих 6 чисел, например, 5,2,-3,8,1,7.
Значит, если например ты прибавил к числу 5 тройку(3) , то изменяешь значение массива masVisit[0] на true, а все остальные меняешь на false. И так всегда, если произолшло что-нбудь с элементов начального массива, ты сразу ставишь в массиве masVisit[i] значение true, а другие false. Теперь ты знаешь какой элемент был последним изменен. Потом когда закончились всякие изменения, пробегаешь по массву masVisit и смотришь где значение true, if(masVisit[i]==true) { берешь элемент из начального массива с индексом i и делаешь с ним действия };
Серегаа
1 / 1 / 0
Регистрация: 26.04.2012
Сообщений: 24
04.06.2012, 20:53  [ТС]     нужно проверять переменную которая последней изменилась #3
чесно говоря я не совсем понял, я пишу на билдере 6(визуальное) вот код по идее это игра в которой нужно три стрелочки слевой стороны и справой поменять местами,но со сваими нюансами(перепрыгивать только через одну в свободное поле) так вот, мне надо сделать здесь шаг назад, тоесть в любой момент игры я нажимаю, и мой предыдущий ход из этих стрелочек возвращаеться в прощлое положение
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
//---------------------------------------------------------------------------
 
#include <vcl.h>
#pragma hdrstop
     #include <cstdlib.h>
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
int n=4,win=24;
 int i,c,k,l;
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::BitBtn1Click
                             (TObject *Sender)
{
 l=BitBtn1->Left;
i=((TBitBtn *)Sender)->Tag/2;
c=((TBitBtn *)Sender)->Tag%2;
              k=n-i;
              if((c==0  &&   (k==1||k==2) )   ||  (c==1&&(k==-1||k==-2))  )
                 {
              ((TBitBtn *)Sender)->Tag+=2*k;
               ((TBitBtn *)Sender)->Left+=56*k;
               win-=abs(k);
               n=i;
 
              }
              if(win==0)
              {
              Caption="Pobeda";
              Panel1->Enabled=false;
              Panel1->Color=clFuchsia  ;
              }
}
//---------------------------------------------------------------------------
void __fastcall TForm1::BitBtn6Click(TObject *Sender)
{
 int i,c,k;
 
i=((TBitBtn *)Sender)->Tag/2;
c=((TBitBtn *)Sender)->Tag%2;
              k=n-i;
              if((c==0  &&   (k==1||k==2) )   ||  (c==1&&(k==-1||k==-2))  )
                 {
              ((TBitBtn *)Sender)->Tag+=2*k;
               ((TBitBtn *)Sender)->Left+=56*k;
               win-=abs(k);
               n=i;
 
              }
              if(win==0)
              {
              Caption="Pobeda";
              Panel1->Enabled=false;
              Panel1->Color=clFuchsia  ;
              }
}
//---------------------------------------------------------------------------
void __fastcall TForm1::BitBtn2Click(TObject *Sender)
{
 int i,c,k;
 
i=((TBitBtn *)Sender)->Tag/2;
c=((TBitBtn *)Sender)->Tag%2;
              k=n-i;
              if((c==0  &&   (k==1||k==2) )   ||  (c==1&&(k==-1||k==-2))  )
                 {
              ((TBitBtn *)Sender)->Tag+=2*k;
               ((TBitBtn *)Sender)->Left+=56*k;
               win-=abs(k);
               n=i;
 
              }
              if(win==0)
              {
              Caption="Pobeda";
              Panel1->Enabled=false;
              Panel1->Color=clFuchsia  ;
              }
}
//---------------------------------------------------------------------------
void __fastcall TForm1::BitBtn3Click(TObject *Sender)
{
 int i,c,k;
 
i=((TBitBtn *)Sender)->Tag/2;
c=((TBitBtn *)Sender)->Tag%2;
              k=n-i;
              if((c==0  &&   (k==1||k==2) )   ||  (c==1&&(k==-1||k==-2))  )
                 {
              ((TBitBtn *)Sender)->Tag+=2*k;
               ((TBitBtn *)Sender)->Left+=56*k;
               win-=abs(k);
               n=i;
 
              }
              if(win==0)
              {
              Caption="Pobeda";
              Panel1->Enabled=false;
              Panel1->Color=clFuchsia  ;
              }
}
//---------------------------------------------------------------------------
void __fastcall TForm1::BitBtn4Click(TObject *Sender)
{
 int i,c,k;
 
i=((TBitBtn *)Sender)->Tag/2;
c=((TBitBtn *)Sender)->Tag%2;
              k=n-i;
              if((c==0  &&   (k==1||k==2) )   ||  (c==1&&(k==-1||k==-2))  )
                 {
              ((TBitBtn *)Sender)->Tag+=2*k;
               ((TBitBtn *)Sender)->Left+=56*k;
               win-=abs(k);
               n=i;
 
              }
              if(win==0)
              {
              Caption="Pobeda";
              Panel1->Enabled=false;
              Panel1->Color=clFuchsia  ;
              }
}
//---------------------------------------------------------------------------
void __fastcall TForm1::BitBtn5Click(TObject *Sender)
{
  int i,c,k;
 
i=((TBitBtn *)Sender)->Tag/2;
c=((TBitBtn *)Sender)->Tag%2;
              k=n-i;
              if((c==0  &&   (k==1||k==2) )   ||  (c==1&&(k==-1||k==-2))  )
                 {
              ((TBitBtn *)Sender)->Tag+=2*k;
               ((TBitBtn *)Sender)->Left+=56*k;
               win-=abs(k);
               n=i;
 
              }
              if(win==0)
              {
              Caption="Pobeda";
              Panel1->Enabled=false;
              Panel1->Color=clFuchsia  ;
              }
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::Button1Click(TObject *Sender)
{
 BitBtn1->Tag=2 ;
 BitBtn1->Left=8 ;
 BitBtn6->Tag=4   ;
 BitBtn6->Left=64  ;
 BitBtn2->Tag=6     ;
 BitBtn2->Left=120   ;
 BitBtn3->Tag=11      ;
 BitBtn3->Left=232     ;
  BitBtn4->Tag=13       ;
 BitBtn4->Left=288       ;
  BitBtn5->Tag= 15        ;
 BitBtn5->Left=344         ;
  n=4;
   win=24;
    Panel1->Enabled=true;
 
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::Button2Click(TObject *Sender)
{
Close();
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::Button3Click(TObject *Sender)
{
 
   win+=1;
}
//---------------------------------------------------------------------------
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru