Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Спецификация
- //
- #include <iostream>
- #include <cmath>
- using namespace std;
- const char* ERROR_X_1 = "Ошибка: переменная должна быть числом.";
- const char* ERROR_X_2 = "Ошибка: переменная должна лежать в интервале от -1 до 1.";
- const char* ERROR_NUMBER = "Ошибка: должно быть число.";
- const char* ERROR_NUM = "Ошибка: максимальное значение суммы не может быть меньше 2.";
- void rost(int numberMax, double x, double p, double n, bool q, int f, int count)
- {
- for (int i = 0; i < numberMax; i++)
- {
- p = p * x * x;
- if (q == false)
- {
- n = n - p / f;
- q = true;
- }
- else
- {
- n = n + p / f;
- q = false;
- }
- f = f * (count + 1) * (count + 2);
- count += 2;
- }
- }
- int main()
- {
- try
- {
- setlocale(LC_ALL, "rus");
- int f = 2;
- int count = 2;
- double n = 1;
- double absError = 0.000001;
- double t = 0.001;
- double p = 1.0;
- bool q = false;
- double x;
- int numberMax;
- cout << "Введите максимальное число слагаемых: ";
- cin >> numberMax;
- if (!cin)
- {
- throw ERROR_NUMBER;
- return -1;
- }
- if (numberMax < 2)
- {
- throw ERROR_NUM;
- return -1;
- }
- cout << "Введите переменную: ";
- cin >> x;
- if (!cin)
- {
- throw ERROR_X_1;
- return -1;
- }
- if (x > 1 or x < -1)
- {
- throw ERROR_X_2;
- return -1;
- }
- Cos(numberMax, x, p, n, q, f, count);
- cout << cos(x) << " " << n << endl;
- }
- catch (const char* error)
- {
- cerr << error << endl;
- return 0;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement