мета-данные страницы
  •  
Загрузка не удалась. Возможно, проблемы с правами доступа?

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
pascal:iterations [20/10/2010 14:20] ocapascal:iterations [20/10/2010 14:28] (текущий) oca
Строка 70: Строка 70:
 Действие данного цикла проявляется следующим образом. В начале каждой итерации проверяется логическое условие, которое может быть либо логическим выражением, результатом которого может быть ответ "да" или "нет", либо переменной типа Boolean. Например: Действие данного цикла проявляется следующим образом. В начале каждой итерации проверяется логическое условие, которое может быть либо логическим выражением, результатом которого может быть ответ "да" или "нет", либо переменной типа Boolean. Например:
  
-Многие компиляторы запрещают в заголовке цикла константные выражения, т.е. выражения, значения которых определены до начала работы программы.  Turbo и Free Pascal допускают в качестве условия логические константы TRUE (Истина) и FALSE (Ложь) для реализации бесконечных циклов. Затем тело цикла выполняется только в том случае, если условие выполнено. Если условие выполения изначально ложно, то цикл не исполняется ни разу, но это не считается ошибкой, а нормальным выполнением программы!+
  
 Используя цикл While, следует помнить, что в теле цикла должны либо быть команды, которые изменяют результат проверки условия выполнения, либо явный выход из цикла. Поэтому, тело оператора While обычно содержит несколько исполняемых операторов и нуждается в операторных скобках Begin-End. Используя цикл While, следует помнить, что в теле цикла должны либо быть команды, которые изменяют результат проверки условия выполнения, либо явный выход из цикла. Поэтому, тело оператора While обычно содержит несколько исполняемых операторов и нуждается в операторных скобках Begin-End.
Строка 79: Строка 79:
 <code pascal| Цикл While-Do> <code pascal| Цикл While-Do>
 writeln('Печатаем числа от 1 до 10'); writeln('Печатаем числа от 1 до 10');
-While (i <10) Do +While (i >0) Do 
   { Потеряны Begin и End? }   { Потеряны Begin и End? }
-  writeln(i); +  writeln(10 - i);
  { Судя по коду, значение i - неопределено }  { Судя по коду, значение i - неопределено }
-  i:=i+1;  +  i:=i-1;  
-  { Эта команда никогда не выполнится }+  { Эта команда может никогда не выполнится }
 </code>   </code>  
  
Строка 91: Строка 91:
 <code pascal| Цикл While-Do> <code pascal| Цикл While-Do>
 writeln('Печатаем числа от 1 до 10'); writeln('Печатаем числа от 1 до 10');
-i:=1; +i:=9;
  { Инициализация }  { Инициализация }
-While (i <10) Do +While (i >0) Do 
 Begin Begin
-  writeln(i);  +  writeln(10-i);  
-  i:=i+1; +  i:=i-1;
   { Шаг цикла }   { Шаг цикла }
 End;   End;  
 </code> </code>
  
-|<latex> \frac{q}{3} </latex>|w|e|r|t|| + 
-|1|2|3|4|5|6|+==== Общие замечания ==== 
 + 
 +Многие компиляторы запрещают в заголовке цикла константные выражения, т.е. выражения, значения которых определены до начала работы программы.  Turbo и Free Pascal допускают в качестве условия логические константы TRUE (Истина) и FALSE (Ложь) для реализации бесконечных циклов. Затем тело цикла выполняется только в том случае, если условие выполнено. Если условие выполения изначально ложно, то цикл не исполняется ни разу, но это не считается ошибкой, а нормальным выполнением программы! 
 +