While do - Pascal
Формулировка задачи:
Как в условие после while записать текстовое выражение, при выводе которого в edit в действиях переменная типа integer будет увеличиваться на 1?
Где ошибка?
Заранее спасибо!
var Form3: TForm3; i : integer; q : string; procedure TForm3.Button2Click(Sender: TObject); begin i:=1; while q :='Данные введены верно, вы можете перейти к расчёту зарплаты' do begin Edit1.Text:=IntToStr(i+1) end; end;
Решение задачи: «While do»
textual
Листинг программы
var Form3: TForm3; i : integer; q : string; procedure TForm3.Button2Click(Sender: TObject); begin i:=1; while (q ='Данные введены верно, вы можете перейти к расчёту зарплаты') do begin Edit1.Text:=IntToStr(i+1) end; end;
Объяснение кода листинга программы
- Объявляется переменная
Form3типаTForm3, которая предположительно является объектом формы. - Объявляется переменная
iтипа integer, которая будет использоваться для хранения целочисленных значений. - Объявляется переменная
qтипа string, в которую будет сохраняться текстовая информация. - Создается процедура
Button2Click, которая будет выполняться при нажатии на кнопку. - Устанавливается начальное значение переменной
iравное 1. - Затем начинается цикл
while, который выполняется пока значение переменнойqравно 'Данные введены верно, вы можете перейти к расчёту зарплаты'. - Внутри цикла значение поля
Edit1формы устанавливается равным результату сложения значения переменнойiи 1, преобразованного в строку. Однако, в данном коде не представлена возможность изменения значения переменнойq, что приведет к бесконечному циклу, в том случае если строкаДанные введены верно, вы можете перейти к расчёту зарплатыне изменяется внутри тела цикла.