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


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

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



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

While <условие> do <тело цикла>;

While, do – зарезервированные слова («пока», «делать»);

While… do – заголовок цикла

<условие> – выражение логического типа (условие продолжения цикла);

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

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

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

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

 

           нет                             да

 

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

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

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

Repeat

    <тело цикла>

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

 

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

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

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

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

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

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

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

 

 

 


                                                            Нет

 

                                             Да

 

 

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

 

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

2. Какие виды циклов можно использовать в языке Pascal?

3. Формат оператора цикла с параметром.

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

5. Почему переменную-параметр называют счетчиком?

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

Задание 1

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Блок-схема:    

                                                               

                                                                    

                                                                    

                                                                    

                                                                    

                                                                    

                                    

                                                                    

                                   

     

                                   

                                                                    

                                                                    

                                                                    

                          Нет                    Да       

                                                                    

                                                                    

 

 

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

Program Example1;                        

Var N,y,i:integer;

Begin                                        

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

Readln(N);                                

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

For i:=1 to N do        {цикл для вычисления суммы, выполняемый N раз}

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

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

End.

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

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

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

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

Сумма у= 30

 

Задание 2

Составить программу, которая определяет, является ли целое четырёхзначное число "перевёртышем", т.е. записывается одинаково слева направо и справа налево.

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

Исходные данные: N – вводимое целое число;

                      M – дубликат числа n;

Результат: текстовое сообщение

Промежуточные переменные:

 i – параметр цикла для создания «перевертыша» (счетчик количества цифр от 1 до 4)

А – число, записанное цифрами числа n в обратном порядке;

К – переменная для запоминания последней цифры числа М.

Типы используемых алгоритмов: циклический, ветвящийся.

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

Program Example2;

Var M,N,A,i:integer;  

Begin

Writeln(‘Введите целое число: ’);

Readln(N);        

M:=N; A:=0;

{создание числа А, записанного цифрами числа N в обратном порядке}  

for i:=1 to 4 do {цикл для записи числа в обратном порядке, выполняемый 4 раза}

begin

K:= M mod 10; {в переменную К записывается последняя цифра числа М}

A:=A*10+K; {к числу А «дописывается» справа последняя цифра числа М}  

M:=M div 10 {из числа M отбрасывается последняя цифра}

end;

if A=N then writeln (‘Число ‘,N:6,’ является перевертышем’)

     else writeln (‘Число ‘,N:6,’ не является перевертышем’);

End.          

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

1. Если N=12321, тогда N является перевертышем

2. Если N=3994, тогда N не является перевертышем

 

i N K A M
--- 3994 --- 0 3994
1   3994 mod 10 = 4 0*10+4 = 4 399
2   399 mod 10 = 9 4*10+9 = 49 39
3   39 mod 10 = 9 49*10+9 = 499 3
4   3 mod 10 = 3 499*10+3 = 4993 0

 

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

Введите целое число: 12321

Число 12321 является перевертышем

Введите целое число: 1234

Число 1234 не является перевертышем

 


Варианты индивидуальных заданий

  Вариант 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.  

ПРАКТИЧЕСКОЕ ЗАНЯТИЕ №4



Поделиться:


Последнее изменение этой страницы: 2021-04-13; просмотров: 94; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.138.204.208 (0.033 с.)