- •Методичні рекомендації до виконання лабораторних робіт
- •Для спеціальностей
- •Лабораторна робота № 1 Лінійні програми
- •Теоретичні відомості
- •Вирази, операнди, операції.
- •Аналогічно не можна змішувати літерні та числові типи даних,тобто вираз типу:
- •Введення-виведення інформації.
- •Завдання
- •Лабораторна робота № 2 Використання операторів умовного та безумовного переходів
- •Теоретичні відомості
- •Оператор умови if
- •Завдання
- •Лабораторна робота № 3 Використання операторів циклу
- •Теоретичний матеріал
- •Завдання
- •Лабораторна робота № 4 Обробка табличних елементів
- •Теоретичний матеріал
- •1 Спосіб
- •2 Спосіб
- •Завдання
- •Лабораторна робота № 5 Сортування елементів масиву
- •Теоретичний матеріал
- •Завдання
- •Лабораторна робота № 6 Робота з даними типу String
- •Теоретичний матеріал
- •Завдання
- •Лабораторна робота № 7 Використання множин даних
- •Теоретичний матеріал
- •Завдання
- •Лабораторна робота № 8 Обробка даних типу запис
- •Теоретичний матеріал
- •Завдання
- •Лабораторна робота № 9 Файлові типи даних
- •Теоретичний матеріал
- •Завдання
- •Лабораторна робота № 10 Типизовані файли
- •Теоретичний матеріал
- •Типизовані файли
- •Завдання
- •Лабораторна робота № 11 Організація підпрограм з використанням функцій
- •Теоретичний матеріал
- •Завдання
- •Лабораторна робота № 12 Організація підпрограм з використанням процедур
- •Теоретичний матеріал
- •Параметри-значення
- •2. Параметри-змінні
- •Завдання
- •Лабораторна робота № 13 Модульна організація програм
- •Теоретичний матеріал
- •Завдання
- •Варіант 1. Робота з матрицями
- •Варіант 2. Арифметичні дії з цілими числами, які не визначаються типом Longint
- •Варіант 3. Цілочисельна арифметика
- •Варіант 4. Опрацювання лінійного масиву даних
- •Варіант 5. Аналіз текстового рядка
- •Варіант 6. Трикутник
- •Варіант 7. Опрацювання масиву даних
- •Варіант 8. Опрацювання масиву даних
- •Варіант 9. Опрацювання двовимірних масивів
- •Лабораторна робота № 14 Створення графічних зображень
- •Теоретичний матеріал
- •Завдання
- •Список літератури
2. Параметри-змінні
Для того, щоб процедура змогла змінювати значення фактичних параметрів, потрібно змінити спосіб передачі параметрів в процедуру. Новий спосіб називається передачею по імені.
При використанні цього способу заголовок процедури змінюється таким чином: перед ідентифікатором формального параметра в заголовку процедури вказується службове слово Var.
Змінні, перед якими записане службове слово Var, називаються параметрами-змінними.
При виконанні процедури формальні параметри-змінні замінюються фактичними параметрами. Будь-які зміни значення формального параметру-змінної приводить до зміни значення фактичного параметру-змінної. За допомого параметрів-змінних в основну програму передаються результати дії вказівок над даними.
Задача.
Дано дві трійки чисел: А1, В1, СІ і А2, В2, С2.
Знайти значення сум:
S1 = min(Al,Bl, СІ) + min(A2, B2, С2),
S2= mах(А1, В1, СІ) + mах(А2, В2, С2).
Для знаходження min і max з трьох чисел використаємо процедуру МіnМах.
Program PRIKLAD;
Var Al,Bl,Cl,A2,B2,C2,MINl,MIN2,MAX1,MAX2,Sl,S2:real;
procedure MinMax(A,B,C:real; var MIN,MAX:real);
begin
MAX:=A;
if MAX<B then MAX:=B;
if MAX<C then MAX:=C;
MIN:=A;
if MIN>B then min:=B;
if MIN>C then MIN:=C;
end;
begin
write('Al='); readln(Al);
write('B1='); readln(Bl);
write('Cl='); readln(Cl);
write('A2='); readln(A2);
write('B2='); readln(B2);
write('C2='); readln(C2);
MinMax(Al,Bl,Cl,MINl,MAXl); MinMax(A2,B2,C2,MIN2,MAX2);
S1:=MIN1+MIN2;
S2:=MAX1+MAX2;
Writeln('Sl=',Sl);
Writeln('S2=',S2);
end.
Завдання
1. Використовуючи підпрограми створити і вивести масив А[1..n] (n>10). Елементи масиву створюються за формулою з поданої нижче таблиці.
Варіант |
А[x]= |
1 |
|
2 |
|
3 |
|
4 |
|
5 |
|
6 |
|
7 |
|
8 |
|
9 |
|
10 |
|
11 |
|
12 |
|
13 |
|
14 |
|
15 |
|
2. Скласти підпрограму для пошуку даних у масиві. Критерії пошуку взяти з поданої нижче таблиці.
Варіант |
Критерії пошуку |
1 |
Обчислити суму першого та останнього елементів масиву. |
2 |
Обчислити суму та добуток всіх елементів масиву, для яких виконується нерівність A[x]<-3.2 або A[x]>0. |
3 |
Обчислити добуток та кількість усіх значень масиву, для яких виконуються нерівності A[x]<-3 або A[x]>0.4 |
4 |
Обчислити добуток усіх від'ємних значень масиву та визначити кількість додатних. |
5 |
Обчислити модуль добутку максимального та мінімального елементів. |
6 |
Обчислити середнє арифметичне всіх від'ємних елементів масиву. |
7 |
Визначити суму додатних значень масиву та кількість від'ємних. |
8 |
Скільки від'ємних та додатних значень має масив? |
9 |
Обчислити суму та кількість додатних значень масиву. |
10 |
Обчислити суму квадратів усіх додатних елементів масиву. |
11 |
Обчислити модуль різниці максимального та першого елементів масиву. |
12 |
Обчислити суму усіх елементів масиву, для яких виконується нерівність A[x}<1.2 або A[x]>4 |
13 |
Яких елементів у масиві більше: додатних чи від'ємних? |
14 |
Обчислити суму та кількість тих елементів масиву, для яких виконується нерівність 3<A[x]<4 |
15 |
Обчислити добуток усіх елементів масиву, для яких справджується нерівність 2<A[x]<4.1 |
3. Скласти програму для обробки масивів з різною кількістю елементів.
Розмірність масиву слід задати іменованими константами. Всі необхідні дані повинні передаватися підпрограмам в якості параметрів; усі величини, що використовуються всередині підпрограм, повинні бути описані як локальні. Використання глобальних змінних у підпрограмах не допускається. Виведення результатів роботи підпрограм повинен виконуватися у головній програмі.
завдання
У підрозділі Y є 15 співробітників, а в G – 20. Протягом місяця вони відпрацювали деяку кількість днів, яка задана як випадкова величина зі значенням yn=random(31), n=1..15, gk=random(31), k=1..20. Денна оплата праці d у.о. Податкова ставка 20%. Використовуючи підпрограми утворити масиви y, g, вивести значення їх елементів на екран і виконати завдання пошуку даних для кожного підрозділу. Вивести повідомлення, якщо шуканих даних немає.
Варіант |
Критерії пошуку |
1 |
Скільки осіб працювали у кожному підрозділі більше 15 днів7 |
2 |
Хто найменше заробив у кожному підрозділі? |
3 |
Кому нараховано більше, ніж 100 у.о. у кожному підрозділі? |
4 |
Який середній заробіток у кожному підрозділі? |
5 |
Скільки осіб отримали більше, ніж 50 і менше, ніж 120 у.о.? |
6 |
Скільки осіб працювали менше, ніж 10 днів? |
7 |
Яка сума податку була сплачена у кожному підрозділі? |
8 |
Хто сплатив найбільший податок у кожному підрозділі? |
9 |
У скількох осіб податок перевищив 20 у.о.? |
10 |
У якому підрозділі більший середній заробіток? |
11 |
У скількох осіб заробіток вищий за середній? |
12 |
Хто заробив більше, ніж 100 і менше, ніж 200 у.о.? |
13 |
Скільки осіб працювали більше, ніж 5 і менше, ніж 12 днів? |
14 |
Який середній заробіток перших п’яти осіб? |
15 |
Хто найбільше заробив у кожному підрозділі? |
4. Записати у звіт відповідні тексти програм та результати їх виконання.