вот что у меня получилось. есть проверка на ввод(допустим, а не может быть равным нулю, т.к. на 0 делить нельзя и т.д.). Только не уверен насчет синуса, но вроде работает, хоть и не проверял )
C++ |
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
| #include <iostream>
#include <cmath>
using namespace std;
int main()
{
double a = 0, n = 0, x = 0, b = 0;
cout << "Рассчет по формуле для t1\n"
<< "Введите a: ";
cin >> a;
if(a == 0)
{
cout << "a не может быть равным нулю\n";
while(a == 0)
{
cout << "Повторите ввод a: ";
cin >> a;
}
}
cout << "Введите n: ";
cin >> n;
if(n == 2 || n == 1)
{
cout << "n не может быть равным '1' или '2'\n";
while(n == 2 || n == 1)
{
cout << "Повторите ввод n: ";
cin >> n;
}
}
cout << "Введите x: ";
cin >> x;
if(x == 0)
{
cout << "x не может быть равным нулю\n";
while(x == 0)
{
cout << "Повторите ввод x: ";
cin >> x;
}
}
cout << "Введите b: ";
cin >> b;
double t1 = (1/a)*(-1/(n-2)*(pow(x,(n-2)))) + ((b/(n-1)*(pow(x,(n-1)))));
cout << "Результат рассчета t1: " << t1 << endl;
cout << "Расчет по формуле для t2\n"
<< "Введите a: ";
cin >> a;
if(a == 0)
{
cout << "a не может быть равным нулю\n";
while(a == 0)
{
cout << "Повторите ввод a: ";
cin >> a;
}
}
cout << "Введите x: ";
cin >> x;
double t2 = (2*x/(a*a))*sin(a*x) - ((x*x/a) - (2/(a*a*a)))*cos(a*x);
cout << "Результат рассчета t2: " << t2 << endl;
return 0;
} |
|
Успехов!