Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Модуль 1 / M1L2

.docx
Скачиваний:
84
Добавлен:
22.04.2016
Размер:
119.28 Кб
Скачать

Міністерство освіти і науки України

Національний авіаційний університет

Кафедра прикладної інформатики

Лабораторна работа №2

З дисципліни: “Алгоритмізація та програмування”

Виконав

Студент ТП - 113

Односумов Микола

Варіант 16

Задача №1.

Ввести довільні значення х, і (номер варіанта),a, b, c, d можна задати як сталі, та обчислити значення двох функцій: та . Вибрати із першої роботи. Обчислити і вивести значення суперпозиції функцій:

y=

16

17

Розв’язання

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

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

#include <iostream>

#include <math.h>

using namespace std;

int main ()

{

float x, i , a , b , c , d , y , f , w;

i= 16;

a = 1;

b = 2;

c = 3;

d = 4;

cout << " x= ";

cin >> x;

f = tan(x+a) - log(fabs(b+7))/log(fabs(i));

w = pow(c,5)*sqrt(pow(x,2) * d * pow( 2.7 , 1.3));

if (abs(x) < 10 )

{ (y = (sqrt(2 * pow(x, 2) + 1.5)) / (sin(3*x)*(2 * x - 7)) + pow(2.7, -3 * x));

}

else

{

(y = 7.4*cos(w)+((5.7*w-3+log(fabs(4*w)))/((w-1.2)*(w+3.5))));

}

cout << " y= " << y;

system("pause");

}

Скріншоти:

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

Задача №2.

Нехай оплата робіт залежить від виду діяльності (А, Б, В) і нараховується за формулою:

де і – номер варіанта. Для робіт типу А відрахування складають 10%, Б – 15%, В – 20%. Ввести тип робіт. Вивести нараховану суму, відрахування і суму до видачі. Розв’язати задачу використовуючи команду розгалудження if.

Розв’язання

Математична постановка: программа присвоює, в залежності від типу роботи, різні значення отриманої кількості грошей, згідно з формулами заданими в умові.

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

#include<iostream>

#include<math.h>

using namespace std;

int main()

{

char work;

float i, y, x, n;

cout << " work is (A\B\C)?" << endl;

cin >> work;

cin >> i;

if (work = 'A')

{

y = 100* abs(((6.3*i)-(2*sin(3*i))/(1.5*((3*i)-7))) + 50);

x = (10 * y) / 100;

n = y - x;

cout << "Narahovano = " << y << endl << "Vidsotky = " << x << endl << "Suma do vydachi = " << n << endl;

system("pause");

}

else

{

if (work = 'B')

{

y = 150* abs((3.5*tan(2 * i) + (pow(i, 3) - 4) / ((i - 1.2)*(i + 3.5)))+100 );

x = (15 * y) / 100;

n = y - x;

cout << "Narahovano = " << y << endl << "Vidsotky = " << x << endl << "Suma do vydachi = " << n << endl;

system("pause");

}

else

{

if (work = 'C')

{

y = 200*abs(((3 * i - 1)*tan(5 * i)) / ((i + 2)*(3 * i - 8)) + sqrt(fabs(i - 3))+135);

x = (20 * y) / 100;

n = y - x;

cout << "Narahovano = " << y << endl << "Vidsotky = " << x << endl << "Suma do vydachi = " << n << endl;

system("pause");

}

}

}

}

Скріншот

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

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

Соседние файлы в папке Модуль 1