Завдання 2
Складіть програму і обчисліть значення функції у. Обчислення логарифмів за різними основами в відповідності до формули здійсніть по процедурі.
1. , при х=4,1
2. , при х=5,8
3. , при х=48,5
4. , при х=3
5. , при х=10
6. , при х=11
7. , при х=15
8. , при х=12
9. , при х=4,1
10. , при х=5,8
11. , прих=48,5
12. , прих=3
13. , прих=10
14. , при х=11
15. , при х=15
16. , при х=12
17. , при х=4,5
18. , прих=3,8
19. , прих=1,8
20. , при х=15
21. , при х=1,9
22. , при х=4,6
23. , при х=8,5
24. , при х=8,4
25. , при х=1,4
Завдання 3
Складіть програму і обчисліть значення функції y. Обчислення сум здійсніть по підпрограмі.
1. , при х=2, де ,
2. , при х=1,4, де ,
3. , при х=3, де ,
4. , при х=8,5, де ,
5. , при х=1,5, де ,
6. , при х=0,4 де ,
7. , при х=5,4 де ,
8. , при х=3,2 де ,
9. , при х=1,5, де ,
10. , при х=3,8 де ,
11. , при х=8,4, де ,
12. , при х=3,8, де ,
13. , при х=2,5, де ,
14. , при х=0,8, де ,
15. , при х=2,5, де ,
16. , при х=4,2, де ,
17. , при х=1,2, де ,
18. , при х=1,3, де ,
19. , при х=2,5, де ,
20. , при х=3,4, де ,
21. , при х=5,2, де ,
22. , при х=2,8, де ,
23. , при х=4,5, де ,
24. , при х=3,8, де ,
25. , при х=6,1, де ,
Контрольні запитання
Для чого призначені процедури?
Як описується заголовок процедури?
Чим відрізняються формальні і фактичні параметри?
Чим відрізняються локальні і глобальні змінні?
Хто дає назву процедурі?
Де записують процедури?
Який загальний вигляд має головна програма?
Який вигляд має команда виклику процедури?
Лабораторна робота № 14
Тема: Створення та реалізація програм з використанням функцій в мові Pascal
Мета: Засвоїти оператори підпрограм-функції в мові програмування Паскаль. Набути практичних навиків складання для розв’язування задач та реалізації програм, які використовують підпрограми-функції.
Теоретичні відомості
Функції можуть мати багато вхідних параметрів і лише один (але обов’язково) вихідний. Наявність тільки одного вихідного параметра і дозволяє використовувати функції як елементи математичних виразів.
Опис функції – це і є, власне, функція користувача. Оскільки вона є підпрограмою, то її положення в програмі визначається у відповідності з наведеною вище структурою.
Опис функції складається з заголовка і тіла функції. Тіло функції, в свою чергу, складається з розділів опису і розділу операторів.
Синтаксис заголовка функції:
Function Ім’я_функції (p1, ..., pm:тип_1; ...; q1, ...,qn:тип_k):тип_значення_функції;
Тут p1, ..., pm, ..., q1, ..., qn – вхідні параметри функції, або її аргументи. тип_1, тип_k – типи (імена типів) груп параметрів p1, ..., pm і q1, ..., qn відповідно. Однотипні параметри відокремлюються в списку через кому. Після імені типу ставиться крапка з комою (крім імені типу, що йде останнім в списку).
Приклад 1.
Function Abc(x:real; n:integer):real;
Тут Abc –ім’я функції; х – параметр типу real; n – параметр типу integer. Значення функції мають тип real.
Змінні, імена яких вказані в заголовку функції, а також змінні, імена яких описані в розділі var тіла функції, є самостійними, в тому розумінні, що незважаючи на співпадіння їх імен з іменами змінних в головній програмі чи інших підпрограмах, вони є різними змінними. Це подібно до того, як дві Тані з різних будинків мають одне ім’я, але це різні Тані. Такі змінні називаються локальними.
Значення функції передається в програму через її ім’я. Це значить, що в тілі функції, після обчислення її значення, необхідно це значення присвоїти імені функції (як змінній). Можна декілька раз використовувати ім’я функції в її тілі (наприклад, в різних гілках оператора if), але потрібно, щоби ім’я знаходилось тільки в лівій частині оператора присвоєння.
Виклик функції в головній програмі здійснюється записом імені функції, за яким, в дужках, перераховані через кому її аргументи. Аргументи в виклику функції називаються її фактичними параметрами. Фактичними параметрами можуть бути як змінні, так і константи. Порядок слідування фактичних параметрів в виклику повинний відповідати порядку слідування формальних параметрів в заголовку функції. При виклику, значення фактичних параметрів передаються формальним параметрам.