Постановка задачи. #include <iostream.h>
2.4 Листинг программы на С++ #include <iostream.h> #include <math.h> int main() { float A,B,C,X,Y,Y1,Y2; // ввод данных cout<<"\n Vvod A,B,C"; cin>>A>>B>>C; // вычисление промежуточных данных // сначала числитель Y1=sqrt(A*A+B*B)/(0.5 + A*B) - 1/A; // потом знаменатель Y2=C+fabs(A-B); // потом их отношение Y= Y1/Y2; //теперь всю формулу: X= exp(-A/B)*(sin(Y)+cos(Y)); cout<<"\nA="<<A<<"\tB="<<B<<"\tC="<<C; cout<<"\nY1="<<Y1<<"\tY2="<<Y2<<"\tY="<<Y<<"\nX="<<X; } 2.5 Контрольные вопросы по теме «Линейные вычислительные процессы» 1. Какой алгоритм называется линейным? 2. Из каких команд составляется линейный вычислительный алгоритм? 3. В каком случае значение переменной считается неопределенным? 4. Что происходит с предыдущим значением переменной после присваивания ей нового значения? 5. Как вы думаете, можно ли использовать в арифметическом выражении оператора присваивания неопределенную переменную? К каким последствиям это может привести? 6. Что такое оператор присваивания? 7. Какие операторы ввода и вывода существуют в C? 2.6 Варианты заданий по теме «Линейные вычислительные процессы» Вычислить, упростив при помощи дополнительной переменной. 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30.
Отчёт по Лабораторной работе №1. Постановка задачи. Составить блок-схему и программу для вычисления Y и Z по заданным формулам: а) при х =0,7; б) , где x, y считать с клавиатуры; в) , где x, y считать с клавиатуры.
Блок схемы:
Коды программ: А) #include "stdafx.h" #include <iostream> #include <math.h>
using namespace std; void main () { double x,Y; setlocale (LC_ALL,"Russian"); cout << "Введите x" << endl; cout << "x=", cin >> x; cin.ignore (); Y=3.7*pow(tan(2*x),2.0); cout << "Y=" << Y << endl; system("pause"); } Б) #include "stdafx.h" #include <iostream> #include <math.h>
using namespace std; void main () { double x,Z,y,c; setlocale (LC_ALL,"Russian"); cout <<"Введите x,y" << endl; cout <<"x=", cin >>x; cout <<"y=", cin >>y; cin.ignore (); if (x*y<=-1) Z=x*y; if ((x*y>-1)&&(x*y<2)) Z=0; if (x*y>=2) Z=cos(x*y); cout <<"Z="<<Z<< endl; system("pause"); } В) #include "stdafx.h" #include <iostream> #include <math.h>
using namespace std; void main () { double x,y,a,b; setlocale (LC_ALL,"Russian"); cout << "Введите x,y" << endl; cout << "x=", cin >> x; cout << "y=", cin >> y; cin.ignore (); a=tan(y/x); b=x*sin(pow(y,2.0)); cout << "a=" << a << endl; cout << "b=" << b << endl; if (a>b) cout << "max a"; else cout << "max b \n"; system("pause");
Скриншоты:
А) Б) В)
Ручной счет:
А) x=0.34 =arccos1+12=1.33948 Б) x=1 y=2 x-y=-1 1-2=-1 Z=yex=2*2.71828=5.43656 В) x=1 y=2 a=√tg((y-x)/x)=tg((2-1)/1)=√1.5574=1.24796 b=ln(y2/2)=log(22/2)=0.693147 c=arctg(x* ᵌ√y/(y+2.5))=arctg(1*ᵌ√2/(2+2.5))= 0.272393 min c
|