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

Використання підпрограм користувача. Процедури і функції.

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

Завдання до виконання практичної роботи

а) вивчити правила запису підпрограм різних типів та засобів звертання до них;

б) вивчити засоби передачі параметрів до підпрограми ;

в) засвоїти правила запису програм, які використовують підпрограми різних видів;

г) розробити алгоритми розв`язання задач свого варіанту, записавши їх у вигляді блок-схем;

д) підготувати текстовий варіант програми та попередніх даних.

Запитання для захисту практичної роботи

  1. Підпрограми-процедури у програмі.

  2. Підпрограми-функції у програмі.

  3. Різниця між процедурами та функціями.

  4. Формальні та фактичні параметри.

  5. Принцип локалізації.

  6. Особливості складання блок-схеми програми, що має підпрограми.

  7. Процедурний тип даних.

  8. Рекурсія.

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

Варіант 1

З адача 1: Написати програму знаходження кутів багатокутника IKLMN зі сторонами i,k,l,m,n та діагоналями dl dm.

Вказівки: кут А трикутника виражається через його сторони a,b,c за формулою: A=2arctg , де p= – півпериметр. Попередні дані задавати самостійно.

Задача 2: Обчислити наступні функції:

x= ; y=(x+7)3+(x7)5; w=ln(xa+yb); v=xsinb+(8x)cosb;

Вказівки: попередні дані задавати самостійно; операцію піднесення до ступеня оформити у вигляді функції.

Варіант 2

Задача 1: Написати програму знаходження наближеного значення інтеграла I= , використовуючи наступну наближену формулу:

І= де h=xi+1xi

Вказівки: прийняти h=0.01; знаходження підінтегральної функції оформити у вигляді function.

Задача 2: Дано дійсні додатні числа a,b,c. Обчислити :

.

Вказівки: попередні дані задавати самостійно; знаходження max оформити у вигляді procedure.

Варіант 3

Задача 1:Обчислити визначений інтеграл: І= ,

за формулою: І= .

Вказівки: попередні дані задавати самостійно; знаходження підінтегральної функції оформити у вигляді function.

Задача 2: Обчислити величину:

y= ,

де значення гіперболічного тангенса обчислюється за формулою:

th(x)= .

Вказівки: обчислення значень факторіала та th(x) оформити у вигляді процедур; значення t задавати самостійно.

Варіант 4

Задача 1: Задані дійсні числа a1,a2,a3; b1,b2,b3; c1,с2,с3. Отримати:

е=

Вказівки: попередні дані задавати самостійно; знаходження min оформити у вигляді функції, а обчислення та введення ai ,bi,, ci– у вигляді процедур.

З адача 2: Задані дійсні числа e,m,n,o. Знайти площу п`ятикутника.

Вказівки: значення e,m,n,o задавати самостійно; знаходження площі трикутника за формулою Герона S= , де p=(a+b+c)/2 оформити у вигляді function.

Варіант 5

Задача 1: По заданим дійсним числам a0, a1, .... a10; b0, b1, .... b10; c0, c1, .... c10; x, y, z, обчислити величину:

Вказівки: попередні дані задавати самостійно; введення елементів векторів задати у вигляді процедури; знаходження ступеневого багаточлена задати у вигляді функції, яка реалізує схему Горнера: p=a0xn+ a1xn-1 +…+ an-1x+an=(...(( a0x+a1)x+a2)x+...+an-1)x+an));

Задача 2: Створити підпрограми для обчислення опору паралельного та послідовного з’єднання n резисторів. В якості параметрів підпрограм використати кількість резисторів і масив з номіналів опорів цих резисторів.

Вказівки: За допомогою підпрограм порахувати паралельне та послідовне з’єднання наступних резисторів:

а)1.5, 330, 200, 1500; б) 2200, 390, 1000, 4700, 56000, 750; в)8200, 430, 150;

Варіант 6

Задача 1: Дано дійсні числа x1,y1,....x10,y10. Знайти периметр десятикутника, вершини якого мають відповідні координати: (x1,y1),....(x10,y10).

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

Задача 2: Створити підпрограму для переведення числа із двійкової до десяткової системи числення.

Вказівки: двійкове число задавати як одномірний масив.

Варіант 7

Задача 1: Вирахувати вираз:

Вказівки: піднесення до ступеня оформити у вигляді функції, де параметром буде показник ступеня; значення x, y вводити з клавіатури (x>0).

Задача 2:

Вирахувати величину де

Вказівки: вирахування k(a, b, c) оформити у вигляді процедури; значення x, y, z вводити з клавіатури.

Варіант 8

Задача 1: Вирахувати вираз:

Вказівки: піднесення до ступеня та знаходження факторіалу оформити у вигляді функції; значення x та y вводити з клавіатури.

Задача 2: Вирахувати вираз: де значення гіперболічного тангенсу вирахувати по формулі:

Вказівки: вираховування значення факторіалу оформити у вигляді функції; вираховування значення th(x) оформити у вигляді процедури; значення t вводити з клавіатури.

Варіант 9

Задача 1: Дано дійсні числа a, b.

Знайти: u=max(a, b), v=max(ab, a+b), с=max(u5+v5, 256).

Вказівки: попередні дані задавати самостійно; знаходження max оформити у вигляді функції.

Задача 2: Змінній t присвоїти значення true, якщо рівняння x2+6.2x+a2=0 та x2+ax+b1=0 мають дійсні корені та в той-же час обидва корені першого рівняння лежать між коренями другого, і присвоїти значення false в усіх інших випадках.

Вказівки: a,b задавати самостійно так, щоб перевірити усі можливі випадки. Вирішення будь-якого квадратного рівняння оформити у вигляді підпрограми-процедури.

Варіант 10

Задача 1: Задані два комплексні числа (a+ib) і (c+id) і тип операції (додавання, множення, віднімання, ділення). Створити функції для виконання арифметичних операцій над комплексними числами і вирахувати значення модулів заданих комплексних чисел.

Вказівки: a, b, c та d вводити з клавіатури.

Задача 2: Дано дійсні числа s,t. Отримати g(1.2, s) + g(t, s) g(2s1, st),

де g(a,b)= .

Вказівки: попередні дані задавати самостійно; знаходження функції g(a, b) оформити у вигляді підпрограми-функції.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]