You are on page 1of 9

125.2381.07.

02
Змн. Арк. № докум. Підпис Дата
Виконав Гребенюк Д.О. Літ. Арк. Аркушів
Розробка лінійних
Перевірив Божаткін С.М. 1 5
програм на мові с++
НУК
Лабораторна робота №2

РОЗРОБКА ЛІНІЙНИХ ПРОГРАМ НА МОВІ С++

Мета роботи: набути та закріпити практичні навички при складанні


найпростіших лінійних програм на мові програмування С++.

Порядок виконання роботи


Перше індивідуальне завдання
1.1 Створити проект в інтегрованому середовищі розробки Microsoft
Visual Studio. (lab2_прізвище.cpp).

Рис
унок 1

1.2 Відповідно до номера у журналі виберіть індивідуальне завдання.


Розробіть алгоритм розв'язання задачі. Складіть текст програми.

Завдання варіанта 7: Обчислити значення функції f(x) = |x^3| + x/3,8 *


arctg(x) та округлити його до найближчого цілого. Визначити залишок від

Арк.
125.2381.07.02 2
Змн. Арк. № докум. Підпис Дата
поділу f(x) на 10. Число х – будь-яке число з інтервалу [0...1], яке вводиться з
клавіатури.

Алгоритм даної програми повинен працювати наступним чином:

Крок 1: Введення x.

Крок 2: Перевірка чи x в інтервалі [0, 1].

Крок 3: Обчислення значення функції.

Крок 4: Округлення до найближчого цілого.

Крок 5: Визначення залишку поділу на 10.

Крок 6: Виведення результатів.

Крок 7: Повернення функції з кодом успіху 0.

Текст програми:

#include "StdAfx.h"

int main() {
setlocale(LC_ALL, "Rus");

double x;
cout << "Введiть значення x в iнтервалi [0, 1]: ";
cin >> x;

if (x < 0 || x > 1) {
cout << "Помилка: значення x повинно бути в iнтервалi [0, 1]." << endl;
return 1;
}
double result = abs(pow(x, 3)) + x/(3.8) * atan(x);

Арк.
125.2381.07.02 2
Змн. Арк. № докум. Підпис Дата
int roundedResult = static_cast<int>(ceil(result));
int lastResult = roundedResult % 10;

cout << "Значення функцiї: " << result << endl;


cout << "Округлене значення: " << roundedResult << endl;
cout << "Залишок вiд дiлення на 10: " << lastResult << endl;

return 0;
}
Блок-схема програми:

Рисунок 2

1.3 Введіть текст програми. Скомпілюйте програму. Якщо у програмі є


помилки, виправте їх.
Арк.
125.2381.07.02 2
Змн. Арк. № докум. Підпис Дата
Рисунок 3

Програма була скомпільована успішно, без помилок.

1.4 Запустіть програму на виконання, проаналізуйте результати роботи


виконання програми. Переконайтеся у правильності рішення завдання.

Рисунок 4

Арк.
125.2381.07.02 2
Змн. Арк. № докум. Підпис Дата
Перевірка результату :

Рисунок 5

Друге індивідуальне завдання

Напишіть програму розрахунку за двома формулами (таблиця 1).


Результати обчислень за першою та другою формулою повинні збігатися.

Таблиця 1 - Завдання до лабораторної роботи №2

Перша формула Друга формула

Варіант 7 (
2 3 α
) (
2 11 α
z1= cos 8 π− 4 −cos 8 π + 4 ) √2 α
z2 = 2 sin 2

Алгоритм даної програми працює наступним чином:

Крок 1: Введення значення alpha.

Крок 2: Обчислення значення z1.

Крок 3: Обчислення значення z2.

Крок 4: Виведення результатів.

Арк.
125.2381.07.02 2
Змн. Арк. № докум. Підпис Дата
Текст програми:
#include "StdAfx.h"

int main() {

setlocale(LC_ALL, "Rus");

double alpha;

cout << "Введіть значення alpha в радiанах: ";


cin >> alpha;

double z1 = pow(cos(3.0 / 8.0 * M_PI - alpha / 4.0), 2) -


pow(cos(11.0 / 8.0 * M_PI + alpha / 4.0), 2);

double z2 = (sqrt(2.0) / 2.0) * sin(alpha / 2.0);

cout << "Результат за першою формулою (z1): " << z1 << endl;
cout << "Результат за другою формулою (z2): " << z2 << endl;

return 0;
}

Блок-схема програми:

Рисунок 6

Текст і результат компіляції програми:


Арк.
125.2381.07.02 2
Змн. Арк. № докум. Підпис Дата
Рисуно
к7

Запуск програми і результат її роботи:

Рисунок 8

Перевірка правильності розрахунків:

Арк.
125.2381.07.02 2
Змн. Арк. № докум. Підпис Дата
Рисунок 9 Рисунок 10

Висновок: на цій лабораторній роботі я набув та закріпив практичні


навички при складанні найпростіших лінійних програм на мові
програмування С++.

Арк.
125.2381.07.02 2
Змн. Арк. № докум. Підпис Дата

You might also like