Класс для комплексных чисел
Раcсмотрим программу для вычисления экспоненты от комплексного аргумента. Комплексные числа реализуем с помощью пользовательского класса. При вычислении экспонент от комплексного аргумента z=x+iy воспользуемся тем, что \(ехр(z)=ехр(х)(соs(у)+ isin(у))\). Таким образом, результатом вычисления экспоненты от комплексного числа является комплексное число. Поэтому аргументом соответствующей функции дол жен быть объект класса, через который реализуются комплексные числа, а в качестве результата функцией возвращается объект того же класса Программный код приведен в листинге
#include#include using namespace std; //Класс для реализации комплексных чисел: class Complex{ public: double Re,Im; //Метод для отображения комплексного числа: void show(){ cout< 0) cout << "+" << Im << "i" << endl; if(Im < 0) cout << "-" <<-Im << "i" << endl;} }; //Экспонента от комплексного числа: Complex cExp(Complex z){ Complex tmp; tmp.Re=exp(z.Re)*cos(z.Im); tmp.Im=exp(z.Re)*sin(z.Im); return tmp; } int main(){ Complex z; cout << "Re: "; cin >> z.Re; cout << "Im: "; cin >> z.Im; cout << "z="; z.show(); cout<<"exp(z)="; cExp(z).show(); return 0;}