Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Сборник_лаб.doc
Скачиваний:
0
Добавлен:
15.11.2019
Размер:
768.51 Кб
Скачать

Контрольні питання до лабораторної роботи № 20:

  1. З якою метою у програми включають процедури?

  2. Яку структуру має процедура?

  3. В якому місці програми розміщається опис процедур?

  4. Чи може процедура містити в собі інші процедури?

  5. Яким вимогам повинні задовольняти формальні та фактичні параметри?

________________________________________________________________________________________________

Лабораторна робота № 21

Тема: Розв'язування задач з використанням процедур користувача

Мета роботи. Закріпити навики складання програм, використовуючи стандартні процедури та процедури користувача.

Методичні вказівки до виконання лабораторної роботи

При розв’язуванні задач дотримуватись такої послідовності дій:

  • Вивчити умову задачі

  • Скласти математичну модель розв’язку задачі та блок-схему алгоритму

  • Написати текст програм на мові Pascal.

  • Виконати відладку та тестування програми

  • Записати в зошиті текст програми та результати її виконання.

Задача 1. Написати процедуру Line, яка виводить на екран рядок символів. У процедуру з головної програми передається два параметра: перший n задає довжину рядка (кількість символів), другий с – символ, яким рисується рядок. В головній програмі організувати цикл по завданню різних значень довжин рядків та символів.

Задача 2. Написати процедуру SqLeOkr, яка обчислює площу та довжину кола за заданим радіусом. У процедуру з головної програми передається один параметр R - радіус, а з процедури у головну програму два параметра: площа S та довжина L кола. В головній програмі організувати цикл по завданню різних значень радіуса.

Задача 3. Написати процедуру Shifr, яка шифрує текст. Процес шифрування здійснюється наступним чином: з десяткового коду кожного символу тексту віднімається будь-яке число (наприклад 10). Отримана в результаті віднімання величина інтерпретується як десятковий код іншого символу, який виводиться на екран комп'ютера. У процедуру з основної програми передається один параметр Text – рядок символів, з процедури в основну програму – також один параметр ShText – зашифрований текст. В основній програмі організувати цикл по завданню різних текстів.

Задача 4. Написати процедуру SystDva, яка переводить кожну цифру натурального числа n у двійковий код. У процедуру з головної програми передається один параметр: число n; з процедури в головну програму також один параметр: рядок символів з 0 та 1, відокремлених пробілами. В основній програмі організувати цикл по завданню різних чисел.

Контрольні питання до лабораторної роботи № 21:

  1. Яку кількість параметрів повертає процедура?

  2. Яке співвідношення між фактичними і формальними параметрами?

  3. Чи можуть імена формальних параметрів збігатися з іменами фактичних?

  4. Чим локальні змінні відрізняються від глобальних?

________________________________________________________________________________________________

Лабораторна робота № 22

Тема: Організація підпрограм з використанням функцій

Мета роботи. Навчитися складати програми з використанням функцій, визначати формальні та фактичні параметри, локальні та глобальні змінні.

Методичні вказівки до виконання лабораторної роботи

Опис функції складається із заголовку функції та тіла. Заголовок містить службове слово Function, ім'я функції, список формальних параметрів з вказівкою їх типу та типу результату, що повертається в основну програму:

Function <ім'я> (список формальних параметрів):тип;

Тип-тип значення, що повертається функцією. Функції можуть повертати значення цілого, дійсного, логічного та символьного типів.

Приклади описів функцій:

Function Tan(x: real): real; Function Max(x, y: real): real; Function A1(x: real; y: real): real;

Звернення до функції здійснюється по імені з вказівкою списку фактичних параметрів.

Кількість, типи і порядок слідування формальних і фактичних параметрів повинні збігатися: <ім'я_функції> (список фактичних параметрів);

В тілі функції завжди повинен бути оператор, що присвоює значення імені функції.

Приклад. Визначити функцію, яка обчислює значення тангенса.

Program Abc;

Var x, y: real;

Function Tan( c: real): real;

Begin Tan:=sin(c)/cos(c); End;

Begin

readln(x, y);

writeln(‘tg(‘,x:3:1,’) =’, Tan(x):4:1); writeln(‘tg(‘,y:3:1,’) =’, Tan(y):4:1);

End.

Змінні і типи, визначені в основній програмі до оголошення процедур і функцій, називаються глобальними – вони доступні всім процедурам і функціям. Змінні, визначені в будь-якій підпрограмі або в основній програмі після розділу описів процедур і функцій, називаються локальними.

  • Кожна змінна повинна бути описаною перед тим, як вона буде використана;

  • Областю дії змінної являється та підпрограма, в якій вона описана;

  • Всі змінні в підпрограмах повинні бути унікальними;

  • Одна і та ж змінна може бути по-різному визначеною в кожній з підпрограм;

  • Якщо ім'я підпрограми збігається з назвою стандартної підпрограми, то остання ігнорується, а виконується підпрограма користувача;

  • Якщо всередині будь-якої процедури зустрічається змінна з таким же іменем, що і глобальна змінна, то всередині процедури буде діяти локальний опис;

  • Кожна підпрограма може змінити значення глобальної змінної.

Хід роботи