Цикл с параметром «FOR…DO»

October 6, 2009 / Author AlexR / Category Учебник по паскалю / Comment

Циклы применяются, когда нужно выполнить одни и те же команды несколько раз.

Рассмотрим общий вид цикла с параметром:

For x:=a <to, downto> b do [оператор][;]

[Begin]

[тело цикла];

[End];

“to” применяется при увеличении аргумента a на единицу, а “downto” при уменьшении на единицу. Данный оператор читается следующим образом: управляющая переменная (x) принимает значения от (a) и изменяется с шагом (1 или -1) до конечного значения (b), при этом пока (x) не больше, чем (b), то выполняются команды, находящиеся в теле цикла.

Аналогично как и в операторе условия, так и в циклах (с параметром, с предусловием, с постусловием) бывают простые и блочные формы. Напомню, что простой формой называется запись оператора (цикла, условия и тд.), в теле которого присутствует только одна команда или один оператор, в блочной форме их может быть несколько.

Структурная схема цикла: Схема цикла.

Существуют следующие правила:

  1. Управляющая переменная (x) только целого типа.
  2. Если a>b при шаге +1, то оператор не выполняется (аналогично для шага -1 (a
  3. В теле цикла нельзя изменять основные параметры (x, a, b)
  4.  Допускается блочная форма оператора (тогда, когда нужно выполнить несколько команд в теле цикла).

Рассмотрим следующую задачу: вывести на экран все числа от 1 и до 10 включительно.

Решим ее без применения цикла, то есть с помощью операторов условия и безусловного перехода.

program num1;
var x:integer;
label 1;
begin
  x:=1;
1:  if x<=10 then begin
    write (x:2);
    x:=x+1;
    goto 1
  end
end.

Теперь решим задачу при помощи цикла:

program num2;
var x:integer;
begin
  for x:=1 to 10 do write(x:2)
end.

Как видно решение получилось в два раза короче, и при этом мы с Вами написали программу в хорошем тоне.

Вернуться к оглавлению

Comments are closed.