Ответим сначала на два предыдущих вопроса.
1. Почему тело цикла Repeat..Until можно не заключать в операторные скобки Begin..End? А когда тело цикла заключается в операторные скобки? Правильно, когда требуется объяснить компьютеру, какие операторы составляют тело цикла. Здесь же служебные слова Repeat..Until играют роль операторных скобок, показывая, какие операторы составляют тело цикла.
2. К какой из указанных групп относится цикл For? Этот цикл является циклом с предусловием. Дело в том, что если в заголовке используется служебное слово To, а нижняя граница больше верхней, то тело цикла выполняться не будет. Аналогично, если в заголовке используется служебное слово DownTo, а нижняя граница меньше верхней, то тело цикла также выполняться не будет.
3. Изменим программы так, чтобы числа выводились в обратном порядке:
Program C1_New;
Var
x:Byte;
Begin
WriteLn('Первые 10 натуральных чисел:');
x:=10;
While x>=1 Do
Begin
WriteLn(x);
x:=x-1;
End;
End.
|
Program C2_New;
Var
x:Byte;
Begin
WriteLn('Первые 10 натуральных чисел:');
x:=10;
Repeat
WriteLn(x);
x:=x-1;
Until x<1;
End.
|
| Текст этой программы можно взять здесь. | Текст этой программы можно взять здесь. |