Изучение языка программирования
Турбо Паскаль (Turbo Pascal)

На этом сайте можно: скачать среду программирвания Турбо Паскаль, изучить язык программирования Турбо Паскаль, а так же скачать программы на языке Турбо Паскаль!
Оператор цикла "пока" - while

Оператор цикла "пока" имеет вид:
while [выражение] do [оператор];
[выражение] - условие продолжения цикла, это выражение булевского типа т.е. данное выражение должно иметь только одно из двух значений: TRUE (истина) или FALSE (ложь).
[оператор]: - оператор, который будет выполняться столько раз, пока [выражение] не будет иметь значение FALSE.

Примечание: данный цикл также называют циклом с предусловием (постповеркой).

Пример15.1 Допустим нам надо вывести в столбик на экран 10 символов * . Для этого можно было использовать вот такой код записи прогаммы:

BEGIN
  writeln('*');
  writeln('*');
  writeln('*');
  writeln('*');
  writeln('*');
  writeln('*');
  writeln('*');
  writeln('*');
  writeln('*');
  writeln('*');
END.
В результате выполнения этой программы, мы получим тот результат который и хотели получить. Но запись такой программы была бы очень сложной, если нам бы понадобилось вывести 50 таких символов. Поэтому для реализации такой задачи, где требуется повторять одно или несколько действий много раз (причем даже когда не известно сколько раз нужно повторить действие), легче использовать цикл. Такую программу мы бы записали таким образом:
VAR
  a: integer;		{переменная целого типа для счетчика повторов}
BEGIN
  a:=0;			{начальное значение}
  while a<10 do		{проверка выражения}
  begin			{начало составного оператора}
    writeln('*');		{напечатать символ *}
    a:=a+1;  		{увеличить значение счетчика}
  end;				{конец составного оператора}
END.
Теперь как эта программа работает. Сначала значение счетчика равно ноль, затем в операторе while проверяется выражение: a<10. Так как a=0 то выражение a<10 имеет значение TRUE (верно), поэтому выполняется составной оператор. В нем выполняется вывод символа * и увеличение значения счетчика на единицу (так как символ уже напечатался). Теперь значение a=1 т.е. цикл продолжает выполняться дальше. И вот когда a=10 опять проверяется выражение: a<10. Значение этого выражения FALSE (ложь), поэтому составной оператор больше не выполнется.

Пример15.2 А теперь программа, которая не будет выполняться дальше, пока не будет введено правильное слово:

VAR
  s: string;	   {переменная s - строкового типа (для ввода любых символов)}
BEGIN
  while s<>'www.pascalstudy.narod.ru' do	{проверка выражения}
  begin
    s:='';						{значение s = ничего}
    write('Введите нужное слово:');
    readln(s);					{получение значения s}
  end;
  writeln('Вы ввели верное слово!');
END.
Последняя строка напишется только в том случае если вы введете правильное слово: www.pascalstudy.narod.ru В этом примере при выполнении программы, вы можете ввести два числа, а затем проделать над ними 3 операции, выбрав одну из них в меню т.е. программа похожа на самый простой калькулятор. Если вы заметили, то в третьей константе был использован составной оператор, где было использовано только две команды: присвоение и вывод. Таким образом можно составлять очень большие меню, которые тоже могут содержать оператор выбора.

<<< Назад * Оглавление * Далее >>>