Naloga:
Napišite program, ki reši kvadratno enačbo v kompleksnih številih. Program naj vas na začetku prosi, da vnesite kompleksne koeficiente kvadratne enačbe in vam nato izpiše rešitvi v obliki a+b*i. Predpostavite, da kvadratna enačba vodilnega koeficienta nima 0.
#include <iostream> #include <cmath> #include <complex> using namespace std; int main () { complex<float> a, b, c; complex<float> d, x1, x2; float a1,a2; cout << "Vnesi realni del parametra a: "; cin >> a1 ; cout << "Vnesi imaginarni del parametra a: "; cin >> a2 ; a=complex<float>(a1,a2); cout << "Vnesi realni del parametra b: "; cin >> a1 ; cout << "Vnesi imaginarni del parametra b: "; cin >> a2 ; b=complex<float>(a1,a2); cout < "Vnesi realni del parametra c: "; cin >> a1 ; cout << "Vnesi imaginarni del parametra c: "; cin >> a2 ; c=complex<float>(a1,a2); d=b*b-complex<float>(4.,0.)*a*c; x1=(-b+sqrt(d))/complex<float>(2.,0.)/a; x2=(-b-sqrt(d))/complex<float>(2.,0.)/a; cout << "x1=" << real(x1) << " +" << imag(x1) << "i" << endl; cout << "x2=" << real(x2) << " +" << imag(x2) << "i" << endl; return 0; }
Tekst sedaj shranimo kot datoteko kvadrat3.cpp in prevedemo.
Tu je sedaj še print screen postopka prevajanja z nekaj rezultati. V kolikor vam kakšna podrobnost ni jasna, mi sporočite.
Nazaj na osnovno stran za predmet Uporaba numeričnih metod v kemiji.