Столкнулся со следующей задачей: Реализуйте модуль, подключение которого перегружает операции помещения в поток вывода и извлечение из потока ввода для класса, содержащего методы разложения функции sin(x)+cos(x) в ряд Тейлора. На экран должно выводиться n первых слагаемых разложения. Значение n определяет пользователь.
Пока реализовал данную программу для sin(x). Возникает проблема в том, как составить формулу для разложения функции sin(x)+cos(x) в ряд Тейлора на С++. Переискал по этому поводу все источники в Интернете – результат нулевой. Буду очень благодарен.
#include <iostream> #include <cmath> using namespace std; class Node { private: float x; int n; public: Node(); friend ostream& operator << (ostream&, const Node&); friend istream& operator >> (istream&, Node&); }; Node::Node() { x = 0; n = 0; } istream& operator >> (istream& in, Node& tam) { cout << "Введите x: "; in >> tam.x; cout << "Введите n: "; in >> tam.n; return in; } ostream& operator << (ostream& out, const Node& tam) { float gh = 0.0; for (int st = 1; st <= tam.n; st++) { gh = exp((st*(log(tam.x)))) / st; gh = tam.x / st; out << "(" << gh << ")" << "+" << gh << ""; } return out; } int main() { setlocale(LC_ALL, "Russian"); Node tam; cin >> tam; cout << tam; system("pause"); return 0; }
The post Как на С++ разложить функцию sin(x)+cos(x) в ряд Тейлора через перегрузку операции помещения в поток вводы и извлечения из потока вывода? appeared first on 100% Private Proxies - Fast, Anonymous, Quality, Unlimited USA Private Proxy!.