Professional Documents
Culture Documents
ЛР4 Функції 202
ЛР4 Функції 202
з навчальної дисципліни
Технології програмування захищених систем
Завдання №1
Написати та відлагодити програму розрахунку математичного виразу з застосуванням
функції користувача (табл.1). Початкові дані вводити з клавіатури (при необхідності).
Результати розрахунку вивести на екран (варіант обирається за списком в журналі).
1
Завдання №2
1. Написати та відлагодити програму розрахунку математичного виразу з
застосуванням функції користувача (табл.2). Початкові дані вводити з клавіатури (при
необхідності). Результати розрахунку вивести на екран (варіант обирається за списком в
журналі).
2. Всі елементи масивів генеруємо за допомогою генераторів псевдовипадкових
чисел (реалізувати окремою функцією).
3. В режимі дізасемблера відслідкувати основні етапи послідовності дій у
найпоширенішій реалізації викликів функцій cdecl (див. слайд 4-5 лекції 3). Досліджуємо на
основі створеної функції генератора псевдовипадкових чисел або власно створеної функції.
Підійти творчо до виконання завдання.
Завдання №3
Реалізувати завдання 2,3 лабораторної роботи №1 шляхом створення функцій в
окремих файлах з використанням механізму підключення інших проектів та створення
файлу заголовку.
Для цього окремо в файлі .cpp описати функції алгоритмів A1, A2, A3, оголосити їх в
окремому .h файлі та викликати в основній програмі.
Здійснити тестування програми, показати отримані результати по кожній функції.
Заповнювати таблицю та будувати гістограми НЕПОТРІБНО за вимогами, які були в лр1.
Завдання №4.
Оформити звіт з лабораторної роботи
Звіт має включати:
- титульний лист (з обов’язковим визначенням номеру варіанту);
- тема та мета роботи;
- завдання 1;
- завдання 2;
- завдання 3;
- узагальнений висновок.
2
Таблиця 1
Індивідуальні завдання до завдання №1
Варіант Завдання Примітка
W = 2 Z + 0.75Z − 0.25, де x ∈ [ −1;5] ,
e y + e − y , якщо y < 0, ∆x =0,5
Z = y2 + y, якщо 0 ≤ y < 2,
1,16,31
y + Lny, якщо y ≥ 2,
x
y = 2 sin(π ⋅ ) + cos x.
2
1 x ∈ [0;4],
, якщо x ≥ 2,
2,17,32 y = 12,3x − 9 x + 1,5
2
∆x = 0,5
якщо x < 2,
4 − x2 ,
x 2 + lg x, якщо x > 0, x ∈ [− 1;3],
3,18 y = 5
5 + sin x , якщо x ≤ 0, ∆x = 0,1
5 sin 2 x + 5 x + 5 , якщо x > 0, x ∈ [0;5],
4,19 y= 1 ∆x = 0,2
lg( x − 0,5) , яякщо x ≤ 0,
9 x 2 − 7 x + 3,5, якщо x < 3, x ∈ [1;5],
5,20 y= 4 2
x − 8, якщо x ≥ 3, ∆x = 0,5
ln 3 x + x 2 t = 2,2,
якщо x < 0,5,
x ∈ [0,2;2],
,
x + t
1 ∆x = 0,5
6,21 z = x+t + , якщо x = 0,5,
x
cos x + t ⋅ sin x, якщо x > 0,5
a+b a = 2,6,
e x + cos x , якщо x < 2,8,
b = −0,39,
a+b
7,22 s= , якщо 2,8 ≤ x < 6, x ∈ [0,2;2],
x +1
∆x = 0,5
cos x + t ⋅ sin x, якщо x≥6
x ⋅ 3 x − a , якщо x > a, a = 1,5,
8,23
w = x ⋅ sin ax, якщо x = a, x ∈ [− 1;5],
e − ax ⋅ cos ax, якщо x < a ∆x = 0,5
7 a = 1,5,
π ⋅ x − x 2 , якщо x < 1,3,
3
x ∈ [− 1;5],
9,24 y = ax 3 + 7 x , якщо x = 1,3, ∆x = 0,5
lg( x + 7 x ), якщо x > 1,3
3
Варіант Завдання Примітка
a = 2,8,
ax 2 + bx + c, якщо x < 1,2, b = −0,3,
a c = 4,
10,25 y = + x 2 + 1, якщо x = 1,2,
x x ∈ [1;2],
a + bx , якщо x > 1,2
∆x = 0,1
x2 +1
7 a = 1,65,
π ⋅ x − x2 , якщо x < 1,4,
2
x ∈ [0,7;2],
11,26 y = ax 3 + 7 x , якщо x = 1,4, ∆x = 0,1
ln( x + 7 x + 2 якщо x > 1,4
1,5 ⋅ cos 2 x, якщо x < 1, a = 2,3,
1,8 ⋅ ax, якщо x = 1, x ∈ [0,2;2,8],
12,27 q=
( x − 2 ) + 6, якщо 1 < x ≤ 2,
2 ∆x = 0,2
3 ⋅ tgx, якщо x>2
at 2 + b sin t + 1, якщо t < 0,1, a = 2,5,
b = 0,4,
13,28 w= at + b, якщо t = 0,1,
at 2 + b cos t + 1, якщо t > 0,1 t ∈ [− 1;1],
∆t = 0,2
i +1
2
i +1
2 a = 0,3,
a ⋅ sin , якщо sin
> 0,
n = 10,
n n
Z =
14,29
+ i ∈ [1;10],
cos i + ,
2
1 i 1
якщо sin ≤ 0
n n ∆i = 1
sin x ⋅ lg x, якщо x > 3,5, x ∈ [2;5],
15,30 y=
cos x ,
2
якщо x ≤ 3,5, ∆x = 0,2
Таблиця 2
Індивідуальні завдання до завдання №2
Варіант Завдання Примітка
, тобто число сполучень а) n = 5; m = 2
n!
Обчислити С mn =
m!(n − m)! б) n = 5; m = 3
1,16,31
із n елементів по m. Факторіали обчислити за в) n = 10; m = 2
допомогою підпрограми. г) n = 10; m = 5
Обчислити функцію f (x ) = a + bch(x ) , де x ∈ [0;1] ;
e +e
x −x
∆x = 0.1;
ch (x ) = , обчислити за допомогою
2,17,32 2 a = 5.2 ;
підпрограми. Значення х и f (x) вивести у вигляді b = 1.5 .
таблиці.
4
Варіант Завдання Примітка
Обчислити корені квадратних рівнянь Всі корені дійсні
3,18 x − ax + b = 0 ;
2
cy − dy − f = 0
2
коофіціенти
a, b, c, d, f задати самостійно
Впорядкувати всі елементи таблиці N = 10
А(N) за зростанням, використовуючи як
4,19
допоміжний алгоритм пошуку мінімального
елемента.
Впорядкувати всі елементи таблиці N = 12
B(N) за спаданням, використовуючи як
5,20
допоміжний алгоритм пошуку максимального
елемента.
Обчислити суму позитивних елементів N = 8;
6,21 масивів Х(N), Y(N), Z(K). Для обчислення суми М = 10;
використовувати допоміжний алгоритм. К = 12.
Обчислити середнє арифметичне позитивних N1 = 10;
елементів масивів А(N1), В(N2), С(N3). Для N2 = 12;
7,22
обчислення суми використовувати допоміжний N3 = 8.
алгоритм.
Обчислити суму елементів головних діагоналей N ≤ 8;
8,23 матриць А(N, N), В (М, М) із використанням М ≤ 6.
допоміжного алгоритму.
Обчислити Ζ =
S1 + S 2
, де S1 і K1 – сума і кількість N ≤ 12;
K1 K 2 М ≤ 12.
9,24
позитивних елементів масиву X(N); S2 і K2 - сума
і кількість позитивних елементів масивуY(M).
X 1 + Y1 N = 8;
Обчислити Ζ = , де X1 і Y1 – найменші
2 М = 12.
10,25 елементи масивів X(N) і Y(M). Використовувати
як допоміжний алгоритм пошуку мінімального
елемента.
Підрахувати число нульових елементів для N ≤ 5;
11,26 матриць A(N,M) і B(M,N). Підрахунок виконати за М ≤ 5.
допомогою допоміжного алгоритму.
lg( x + 1), якщо x > 1, x ∈ [0.5;3] ;
y= 2
sin ⋅ ax , якщо x ≤ 1 ∆x = 0.2;
12,27 a = 25.8.
Обчислити значення x і y та вивести у вигляді
таблиці
Визначити параметри трикутників, що задані XA=5; YA=5;
13,28 координатами їх вершин: XB=25; YB=20;
XA(5), XB(25), XC(45),YA(5),YB(80),YC(5). XC=45; YC=5.
sin x lg x, якщо x > 3.5 x ∈ [2 ; 5] ;
14,29 y=
cos x , якщо x ≤ 3.5
2 3
∆x = 0.2.
5
Варіант Завдання Примітка
Обчислити значення х і у та вивести у вигляді
таблиці.
Обчислити суму елементів, які лежать нижче N ≤ 6;
15,30 головної діагоналі матриць М ≤ 8.
А(N, N), B(M, M).
ПОТОЧНИЙ КОНТРОЛЬ:
Від дати проведення заняття – два тижня.
#include <iostream>
#include <math.h>
#include <string>
using namespace std;
int main()
{
6
//1.
const int m = 2, c = -1;
const double t = 1.2, b = 0.7;
float y, z;
y = pow(m * t * b * t + abs(c * sin(t)), 1 / 3);
z = m * cos(b * t * sin(t)) + c;
cout << "y = " << y << " z = " << z;
}
Рис.1
Рис.2.
Також, разом зі звітом (звіт надсилається окремим файлом) надсилається
архів проекту (zip, rar) в зашифрованому вигляді (пароль – пошта, яку ви вказали
мені для комунікації (надана старостою групи)). Якщо проект невеликій і немає
взаємопов’язаних файлів – достатньо відправити файл з розширенням .cpp.
В тематиці листа вказати номер лабораторної роботи, групу (підгрупу),
прізвище, назву дисципліни
Приклад:
7
В разі виявлення викладачем однакових звітів (безумовного копіювання
матеріалів одного студента у іншого, звіт зараховується тільки тому студенту, якій
його перший здав). Іншому студенту (студентам) звіт не зараховується.