Главная/Раздел 2

 

 

Главная

 

 Раздел 1

 

Раздел 2

 

Раздел 3

 

Раздел 4

 

Раздел 5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Циклические конструкции.
Оператор цикла с постусловием

Оператор цикла с постусловием:

Оператор цикла с постусловием организует выполнение цикла, состоящего из любого количества операторов неизвестное заранее количество раз. Выход из цикла осуществляется, если некоторое логическое выражение окажется истинным. Так как истинность логического оператора проверяется в конце, тело цикла выполняется хотя бы один раз.

Структура оператора:

     REPEAT
      <Оператор 1>;
      <Оператор 2>;
          . . .
      <Оператор N>;
     UNTIL <условие>;
  

В этой структуре: <Оператор 1>; <Оператор 2>; . . . <Оператор N>; - тело цикла.
<условие> - логическое выражение, ложность которого проверяется после выполнения тела цикла.

Порядок выполнения оператора:

Выполняются операторы, следующие за служебным словом REPEAT. После этого проверяется условие. Если условие ложно, то происходит возврат к выполнению операторов, следующих за служебным словом REPEAT и снова проверяется условие. Если условие истинно, то выполнение тела цикла прекращается.

В "жаргонном" переводе на русский язык, оператор цикла с постусловием "звучит" так:

Повторять тело цикла пока не выполнится условие.

В цикле REPEAT тело цикла выполняется по крайней мере один раз.  
   
     Примеры применения:  
     {Усовершенствованная программа, вычисляющая сумму двух чисел}
     Program EX1;
     Var
       x, y, sum: real;
       t: byte;
     Begin
      REPEAT
       Writeln('Введите числа x и y.')
       Readln(x, y); sum := x + y;
       Writeln('Cумма чисел равна ', sum);
       Write('Завершить программу? 1-да, 2-нет :');
       Readln(t);
      UNTIL t = 1;
     End.

     {Вычисление суммы S = 1 + 1/2 + 1/3 + ... + 1/50}

     Program EX2;
     Var
       n: integer;
       s: real;
     Begin
      s := 0; n := 1;
      REPEAT
       s := s + 1/n;
       n := n + 1;
      UNTIL n > 50;
      Writeln('Результат суммирования ... ', s);
     End.

Контрольные вопросы:

  1. Что представляет собой тело цикла оператора цикла с постусловием?
  2. Сколько раз выполняется оператор цикла с постусловием?
  3. Как осуществляется выход из оператора цикла с постусловием?
  4. Объясните структуру оператора цикла с постусловием.
  5. Объясните порядок выполнения оператора цикла с постусловием.
  6. Объясните блок-схему оператора цикла с постусловием.
  7. Приведите примеры применения оператора цикла с постусловием.

Задания для самостоятельного выполнения.

  1. Вычислите значение функции y=x^3-x^2+16x-43 для x изменяющегося в диапазоне от -4 до 4 включительно с шагом 0,5.
  2. Напишите программу вычисления функции
     
           + x-4     для  x>2
         y=¦ x^2+14  для  x<-2
           + x/4     в остальных случаях
         для x изменяющегося от -5 до 3 с шагом 0,25.
  3. Вычислить сумму ряда s = sin(1) + sin(2) + ... +sin(n), для n введённого с клавиатуры.
  4. Вычислить сумму n членов ряда s = cos(x) + cos(x)*cos(x) + ... + cos(x)*cos(x)*...*cos(x), для x и n введённых с клавиатуры.
      
  5. Изобразите фрагмент дуги радуги.
  6. Напишите программу, которая рисует последовательность из n окружностей радиуса r и цвета с, для n, r и c введённых с клавиатуры.
  7. Нарисовать "диагональ" экрана, состоящую из 15 разноцветных треугольников.
  8. Нарисуйте ромб из 40 разноцветных прямоугольников одинакового размера.
  9. Нарисовать сетку из пересекающихся окружностей разного цвета, размером nxn, для n введённого с клавиатуры.
  10. Нарисуйте окружность состоящую из 36 разноцветных окружностей увеличивающегося размера.

назад                     ДАЛЕЕ

 

 

 

 

 

 

 

 :::

 

 :::

 

 

 

 

 

 

 

Сайт создан в системе uCoz