Розгалужені та циклічні програми План Неповне і повне

Скачать презентацию Розгалужені та циклічні програми План Неповне і повне Скачать презентацию Розгалужені та циклічні програми План Неповне і повне

38472-leciya_2_umov.oper.,case,cikli.ppt

  • Количество слайдов: 32

>Розгалужені та циклічні програми Розгалужені та циклічні програми

>План Неповне і повне розгалуження. Прості і складені команди. Діапазонний (інтервальний) тип даних. Оператор План Неповне і повне розгалуження. Прості і складені команди. Діапазонний (інтервальний) тип даних. Оператор вибору case. Цикл з параметром (for). Цикл з передумовою (while-do). Цикл з післяумовою (repeat-until).

>Неповне розгалуження  реалізується за допомогою команди       Неповне розгалуження реалізується за допомогою команди if (якщо), а саме: if <логічний вираз> then <команда 1>; Дія команди: якщо логічний вираз істинний, то виконується команда 1, інакше (якщо він хибний), то буде виконуватися команда, яка знаходиться за даною конструкцією.

>Блок-схема неповного розгалуження Блок-схема неповного розгалуження

>Команда повного розгалуження  if   <логічний вираз>  then  <команда 1> Команда повного розгалуження if <логічний вираз> then <команда 1> else <команда 2>; Дія команди: якщо логічний вираз істинний, то виконується команда 1, якщо логічний вираз хибний – то команда 2. Зауваження 1: перед словом else не ставиться крапка з комою. Зауваження 2: команди 1 і 2 можуть бути простими або складеними.

>Блок-схема повного розгалуження команда 2 Блок-схема повного розгалуження команда 2

>Прості (лінійні) програми складаються з: команд присвоєння; команд введення-виведення даних; викликів процедур. Прості (лінійні) програми складаються з: команд присвоєння; команд введення-виведення даних; викликів процедур.

>Складена команда Це конструкція, в якій декілька команд об’єднано в одну за допомогою службових Складена команда Це конструкція, в якій декілька команд об’єднано в одну за допомогою службових слів begin та end (їх ще називають операторними дужками). begin <команда 1>; <команда 2>; ..……………. <команда n> end; Зауваження: запис begin end або ; ; називається порожньою командою.

>Загальний вигляд діапазону: <перше значення>.. <останнє значення>;   Наприклад:  діапазон  Загальний вигляд діапазону: <перше значення>.. <останнє значення>; Наприклад: діапазон 6..9 містить числа 6, 7, 8, 9; діапазон ‘a’..’d’ містить символи ‘a’, ‘b’, ‘c’, ‘d’.

>Оголошення діапазонного типу Діапазонні змінні можна оголошувати у розділі var, не використовуючи типів char, Оголошення діапазонного типу Діапазонні змінні можна оголошувати у розділі var, не використовуючи типів char, integer, byte. Наприклад, var n, k: 1..9; s: ‘a’..’c’; Vik: 5..100;

>Наприклад, записати дані у вигляді діапазону 2, 3, 4, 5, 6; 121, 122, 123, Наприклад, записати дані у вигляді діапазону 2, 3, 4, 5, 6; 121, 122, 123, 124; ‘c’, ‘d’, ‘e’, ‘f’, ‘g’; 2..6; 121..124; ‘c’..’g’.

>Загальний вигляд команди вибору   case <вираз > of  <діапазон (список) значень Загальний вигляд команди вибору case <вираз > of <діапазон (список) значень 1>:<команда 1>; < діапазон (список) значень 2>:< команда 2>; ……................................................................. < діапазон (список) значень n>:< команда n> else <команда (n+1)> end;

>Вираз – це проста змінна цілого, символьного або логічного типу, але не дійсного типу Вираз – це проста змінна цілого, символьного або логічного типу, але не дійсного типу і не типу string. Діапазон (список) значень – сталі або діапазони, тип яких збігається з типом виразу. Якщо діапазон (інтервал) значень складається з декількох елементів, то вони перераховуються через кому.

>Складова частина   else  <команда (n+1)> може бути відсутня – тоді матимемо Складова частина else <команда (n+1)> може бути відсутня – тоді матимемо коротку форму команди вибору case.

>Дія команди:  Якщо значення виразу збігається зі значенням з найближчого списку, то виконується Дія команди: Якщо значення виразу збігається зі значенням з найближчого списку, то виконується відповідна команда, що записана після двокрапки, і на цьому виконання команди case закінчується. Якщо ні, то виконується команда після слова else.

>Наприклад Наприклад

>Цикл    це процес виконання певного набору команд деяку кількість разів. Цикл це процес виконання певного набору команд деяку кількість разів.

>Реалізація циклів Цикли реалізуються з допомогою алгоритмічних конструкцій 3-х видів:   цикл з Реалізація циклів Цикли реалізуються з допомогою алгоритмічних конструкцій 3-х видів: цикл з параметром “для” (for); цикл з передумовою “поки-виконуй” (while); цикл з післяумовою “повторюй-до” (repeat).

>Різновиди команди циклу з параметром (for) for <параметр цикла>:=<вираз1> to <вираз2> do  <команда1>; Різновиди команди циклу з параметром (for) for <параметр цикла>:=<вираз1> to <вираз2> do <команда1>; Параметр – це змінна цілого, символьного, логічного або перерахованого типу. Вирази 1,2 задають початкове та кінцеве значення параметра.

>Нехай s=0. Після виконання команди циклу  for  i:=4 to 6 do Нехай s=0. Після виконання команди циклу for i:=4 to 6 do s:=s+i змінна s набуде значення 0+4+5+6=15. Наприклад

>Різновиди команди циклу з параметром (for) for <параметр цикла>:=<вираз1> downto <вираз2> do <команда1>; Різновиди команди циклу з параметром (for) for <параметр цикла>:=<вираз1> downto <вираз2> do <команда1>; Ця команда діє як попередня. Але крок зміни параметра є -1.

>Наприклад  Нехай s=0. Після виконання команди циклу  for i:=6 downto 4 do Наприклад Нехай s=0. Після виконання команди циклу for i:=6 downto 4 do s:=s+i змінна s набуде значення 0+6+5+4=15.

>Зауваження: Значення параметра в середині циклу змінювати не можна. Якщо вираз1= вираз2, то цикл Зауваження: Значення параметра в середині циклу змінювати не можна. Якщо вираз1= вираз2, то цикл виконується один раз. Якщо вираз1> вираз2, то цикл не виконується жодного разу. Крок зміни параметра циклу у мові Паскаль може бути тільки 1 (-1). Збільшення на 1 значення параметра відбувається автоматично.

>Блок-схема циклу for Блок-схема циклу for

>Приклади застосування циклу for побудова таблиць; обчислення значень елементів послідовності; пошук елементів за певною Приклади застосування циклу for побудова таблиць; обчислення значень елементів послідовності; пошук елементів за певною ознакою тощо.

>Цикл з передумовою  Цикл while (доки ) використовують, якщо значення зміни параметра циклу Цикл з передумовою Цикл while (доки ) використовують, якщо значення зміни параметра циклу є інше, ніж одиниця або якщо кількість елементів (доданків) в програмі наперед не відома. Для цього циклу потрібно знати умову продовження виконання обчислень у циклі. Тому його називають циклом з передумовою.

>Команда while має вигляд while <логічний вираз> do <команда>; Команда while має вигляд while <логічний вираз> do <команда>;

>Блок-схема циклу while-do Блок-схема циклу while-do

>Висновок   Зазначена в тілі циклу команда виконується нуль, один чи  декілька Висновок Зазначена в тілі циклу команда виконується нуль, один чи декілька (часто заздалегідь невідому кількість) разів, доки логічний вираз істинний.

>Цикл з післяумовою (repeat-until)  Команда repeat-until (повторюй... до) має вигляд:   repeat Цикл з післяумовою (repeat-until) Команда repeat-until (повторюй... до) має вигляд: repeat <команди> until <логічний вираз>; Дія команди: команди виконуються в циклі до тих пір, доки значення логічного виразу не стане істинним. Істинний логічний вираз задає умову виходу х циклу.

>Блок-схема циклу repeat-until Блок-схема циклу repeat-until

>Зауваження На відміну від циклу з передумовою (while-do), тіло цикла repeat-until виконується принаймні один Зауваження На відміну від циклу з передумовою (while-do), тіло цикла repeat-until виконується принаймні один раз. На відміну від циклу з передумовою (while-do), вихід із циклу repeat-until здійснюється за “плюсом”. Під час використання циклу з післяумовою можна не використовувати операторні дужки. Їхню роль відіграють слова repeat і until .