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




Оператора цикла REPEAT аналогичен оператору цикла WHILE, но отличается от него тем, что условие проверяется после очередного выполнения тела цикла. Поэтому оператор REPEAT называется циклом с постусловием. Таким образом, цикл REPEAT всегда выполняется хотя бы один раз. Кроме того, в операторе REPEAT задается условие выхода из цикла, а не продолжения цикла, как в операторе WHILE. За это оператор REPEAT называется также циклом «ДО», т.к. он прекращает выполняться, как только значение условия, записанного после слова UNTIL, становится равным TRUE (истина).

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

repeat

<тело цикла>

until <условие выхода из цикла>;

 

repeat, until – зарезервированные слова («повторять», «до тех пор, пока»)

repeat – заголовок цикла

<тело цикла> – произвольный оператор Паскаля (может быть составным)

<условие выхода из цикла> – выражение логического типа

Порядок работы оператора REPEAT

Сначала выполняется <тело цикла>, затем проверяется значение <условия выхода из цикла>. В том случае, если оно равно FALSE (ложь), т.е. не выполняется – тело цикла повторяется еще раз. Так продолжается до тех пор, пока условие не станет TRUE (истина). Если значение условия равно TRUE, то происходит выход из цикла и переход к следующему после REPEAT оператору.

Блок-схема оператора цикла REPEAT:

 
 

 

 


Нет

 

 

Да

Подготовка к практической работе:

1. изучить конспект по теме «Программирование алгоритмов циклической структуры»;

2. изучить краткие теоретические сведения данной работы;

3. ответить на контрольные вопросы.

 

Контрольные вопросы (допуск к работе):

1. Что такое программа (алгоритм) циклической структуры?

2. Формат оператора цикла с постусловием.

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

4. В чем отличия операторов цикла While и Repeat?

5. Возможны ли ситуации, когда тело цикла с параметром не выполнится ни разу?

 

Задание

Составить программу вычисления функции y = с использованием оператора цикла с постусловием.

 

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

1. Поэтапно разработайте решение поставленной задачи (постановка задачи, список используемых переменных, тип используемого алгоритма, текст программы на Паскале, тестовый пример, протокол выполнения программы).

2. Загрузите Pascal.

3. Наберите текст программы.

4. Выполните отладку программы.

5. Запустите программу на выполнение и проверьте результаты тестовых примеров.

 

Содержание отчета:

1. постановка задачи

2. список используемых переменных

3. блок-схема алгоритма с указанием типа алгоритма

4. текст программы на Pascal

5. тестовый пример

6. протокол работы программы

 

Пример оформления отчета:

Постановка задачи.

Составить программу вычисления функции y = с использованием оператора цикла с постусловием.

Список используемых переменных.

Исходные данные: N – количество слагаемых (целого типа)

Результат: y – функция (вещественного типа)

Промежуточные переменные: i – номер слагаемого (целого типа)

Тип алгоритма: циклический.

Блок-схема:

 

Нет

 

 

Да

 

 

Текст программы на Pascal:

Program Example;

Uses CRT;

Var N,y,i:integer;

Begin

Write(‘Введите количество слагаемых N=’);

Readln(N);

y:=0; {значение суммы у принимает значение 0}

i:=1; {номер слагаемого принимает значение 1}

Repeat {цикл для вычисления суммы}

y:=y+sqr(i); {тело цикла – вычисление суммы}

i:=i+1 {тело цикла – увеличение номера слагаемого на 1}

until i>N; {цикл повторяется пока условие i>N не станет истинным}

Writeln(‘Сумма y=’,y);

Readln;

End.

Тестовый пример:

Если N=4, тогда y=30

Протокол работы программы:

Введите количество слагаемых N=4

Сумма у= 30

 

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

1. Что обозначают зарезервированные слова REPEAT, UNTIL?

2. Условие в цикле Repeat является условием для продолжения цикла или для его завершения?

3. Какое значение примет переменная S после выполнения следующих операторов:

1) i:=2; S:=0; repeat S:=S+(i-1); i:=i+1until i>6;

2) i:=0; S:=1; repeat S:=S+i*i; i:=i-1 until i<-4;

4. Сколько раз выполниться тело цикла для следующих операторов:

1) i:=2; S:=0; repeat S:=S+(i-1); i:=i+1until i>4;

2) i:=1; S:=1; repeat S:=S+i*i; i:=i-1 until i<-3;

5. Какой оператор цикла будет бесконечным:

1) i:=0; S:=1; repeat S:=S+i*i; inc(i) until i<-4;

2) i:=0; S:=1; repeat S:=S+i*i; dec(i) until i<0;

3) i:=-4; S:=0; repeat S:=S+i*i until i<-4;

 

Варианты заданий

 

  Вариант 1 1. Составить программу вычисления функции 2. Найти количество трехзначных чисел, кратных числу 23.   Вариант 2 1. Составить программу вычисления функции 2. Определить сумму двухзначных чисел, сумма цифр которых больше заданного числа.     Вариант 3 1. Составить программу вычисления функции 2. Найти количество четных целых чисел из промежутка от А до В.  
  Вариант 4 1. Составить программу вычисления функции 2. Найти все двузначные числа, в которых есть заданная цифра.     Вариант 5 1. Составить программу вычисления функции 2. Найти сумму целых положительных чисел из промежутка от Х до У, кратных 4.     Вариант 6 1. Составить программу вычисления функции 2. Определить количество двухзначных чисел, произведение цифр которых равно заданному числу N.  
  Вариант 7 1. Составить программу вычисления функции 2. Найти все двузначные числа, квадрат суммы цифр которых делится на 15.     Вариант 8 1. Составить программу вычисления функции 2. Найти сумму трехзначных чисел, кратных числу 6.     Вариант 9 1. Составить программу вычисления функции 2. Найти произведение целых чисел из промежутка от Х до У, кратных 8.  
  Вариант 10 1. Составить программу вычисления функции 2. Определить количество трехзначных чисел, кратных заданному числу.     Вариант 11 1. Составить программу вычисления функции 2. Найти количество двузначных чисел, сумма цифр которых больше числа 10.     Вариант 12 1. Составить программу вычисления функции 2. Даны натуральные числа A и B. Найти сумму четных чисел, меньших A*B.

 

 

  Вариант 13 1. Составить программу вычисления функции 2. Даны натуральные числа M и N. Найти все числа, кратные числу N, меньшие M*N.     Вариант 14 1. Составить программу вычисления функции 2. Найти количество двузначных чисел, произведение цифр которых кратно заданному числу.     Вариант 15 1. Составить программу вычисления функции 2. Даны натуральные числа X и Y. Найти количество нечетных чисел, меньших X+Y.
  Вариант 16 1. Составить программу вычисления функции 2. Найти сумму нечетных целых чисел из промежутка от M до N.     Вариант 17 1. Составить программу вычисления функции 2. Найти количество двузначных чисел, кратных сумме двух заданных натуральных чисел.     Вариант 18 1. Составить программу вычисления функции 2. Найти произведение целых чисел из промежутка от A до B, кратных числу А.  
  Вариант 19 1. Составить программу вычисления функции 2. Найти количество трехзначных чисел, в которых есть цифры больше 7.     Вариант 20 1. Составить программу вычисления функции 2. Найти сумму трехзначных чисел, кратных произведению двух заданных натуральных чисел.     Вариант 21 1. Составить программу вычисления функции 2. Найти количество двухзначных чисел, в которых разность цифр по модулю равна 11.
  Вариант 22 1. Составить программу вычисления функции 2. Найти количество целых чисел из промежутка от X до Y, кратных заданному числу.     Вариант 23 1. Составить программу вычисления функции 2. Найти все двухзначные числа, кратные заданному числу.   Вариант 24 1. Составить программу вычисления функции 2. Найти сумму двухзначных чисел, в которых есть цифры, меньше заданной.  

 

 

  Вариант 25 1. Составить программу вычисления функции 2. Найти произведение целых чисел из промежутка от A до B, кратных числу 6.     Вариант 26 1. Составить программу вычисления функции 2. Найти количество двухзначных чисел, в которых произведение цифр меньше 15.     Вариант 27 1. Составить программу вычисления функции 2. Найти сумму двухзначных чисел, в которых есть цифры больше 7.  
  Вариант 28 1. Составить программу вычисления функции 2. Найти произведение двухзначных чисел, в которых есть цифра 1.     Вариант 29 1. Составить программу вычисления функции 2. Найти сумму двухзначных чисел, кратных сумме двух заданных целых чисел.   Вариант 30 1. Составить программу вычисления функции 2. Найти количество трехзначных чисел, в которых последняя цифра больше 6.  
  Вариант 31 1. Составить программу вычисления функции 2. Найти сумму трехзначных чисел, в которых последняя цифра равна заданной.   Вариант 32 1. Составить программу вычисления функции 2. Найти количество трехзначных чисел, кратных произведению двух заданных целых чисел.     Вариант 33 1. Составить программу вычисления функции 2. Найти все двухзначные числа, в которых сумма цифр больше 7.  

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2019-03-15 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: