67974

Обчислення виразів за допомогою математичних функцій

Практическая работа

Коммуникация, связь, радиоэлектроника и цифровые приборы

Скласти програму, яка підраховує і виводить на екран значення змінних t1 і t2 відповідно до заданих формул. Значення деяких параметрів, можуть бути цілими числами або числами з плаваючою точкою. Вони повинні вводитися з клавіатури. Значення інших - задаватися як початкові значення при оголошенні відповідних змінних...

Украинкский

2014-09-16

54 KB

0 чел.

i: Практична робота №5 до лекції №11. 

Практична робота № 5

Обчислення|підрахунок| виразів за допомогою математичних функцій.

Мета|ціль| роботи:  програмування обчислювального процесу лінійної структури з використанням арифметичних операцій і|та| математичних функцій  на мові|язиці| Сі++.

Завдання|задавання| для виконання

Скласти програму, яка підраховує|підсумовує| і|та| виводить на екран значення  змінних t1 і|та| t2 відповідно до заданих формул. Значення деяких параметрів,  можуть бути цілими числами або  числами з|із| плаваючою точкою|крапкою|. Вони повинні вводитися|запроваджувати| з клавіатури. Значення інших|останніх| - задаватися як початкові значення при оголошенні відповідних змінних.    У разі потреби, допускається (і навіть бажано) спростити формули для того, щоб забезпечити мінімізацію об'єму|обсягу| обчислень|підрахунків|.

Розробка алгоритму розв’язання|вирішення|.

Алгоритм розв’язання задачі - лінійний і|та| складається з|із|: введення значень x і|та| y; визначення констант  a, b, c, d ; обчислення|підрахунки| значення t1; обчислення|підрахунки| значення t2; виведення значень t1 і|та| t2.

Оптимізація алгоритму.

Вираз ax зустрічається один раз в першій формулі і|та| двічі в другій. Отже, можна один раз провести множення a на x, а потім використовувати цей результат.  У другій формулі двічі зустрічається множення квадратного кореня на тангенс - це обчислення|підрахунок| можна так само зробити один раз.

#include <iostream>

#include <windows.h>

#include <math.h>

using namespace std;

void main()    

{

SetConsoleCP(1251);

SetConsoleOutputCP(1251);

 double x, y;

 const double a=12.5,b=1.3,c=14.1,d=2.7;

 double t1, t2;        

 double ax;             // робоча змінна

cout<<"Введіть x, y : ";

cin>>x>>y;

ax=a*x;

t1=(b*log(ax+b)/a+d*log(y*x+d)/y)/c;

ax=sqrt((c - b)*(c+b))*tan(ax);

t2=log((ax+2)/(ax - 2))/(2*a*b);

cout<<"\n t1 ="<<t1<<"\n t2 ="<<t2;

cout<<"\n\n";

system("pause");

 return;

}

Результати роботи програми

Введіть|запроваджуйте| x, y : 3.3 1.1

t1 = 0.348897  t2 = 0.0133405

PAGE  1

 DATE \@ "M/d/yyyy" 10/26/2013