Witam,
Mam problem ponieważ mam za zadanie napisać program który będzie wykonywał podstawowe operacje na liczbach rzeczywistych, liczbach zespolonych oraz kwaternionach. Program musi wyglądać jak na obrazku poniżej i mieć jedno okienko wejścia a i b.Wszystko szło pięknie dopóki nie zacząłem zajmować się liczbami zespolonymi i kwaternionami.
Program wygląda tak :
Dla liczb rzeczywistych sprawa jest prosta kod wygląda tak:
if (this->liczbyRzeczywisteToolStripMenuItem->Checked == Enabled)
{
Double x, y;
try
{
x = Convert::ToDouble(a->Text);
y = Convert::ToDouble(b->Text);
wynik->Text=""+ (x+y);
}
catch (FormatException^ e)
{
wynik->Text="Błędny format danych wejściowych";
}
}
I teraz czy da się zrobić tak ażeby ten String który wprowadza użytkownik wpisać do obiektu klasy Liczba_zespolona czy kwaternion ? Próbowałem to robić konwersją na std::string oraz potem konwersja na int albo tablica char ale żaden z tych sposobów
nie poradził sobie ze znakami +/-. W liczbach zespolonych są 4 kombinacje 3+3i, 3-3i, -3+3i, -3-3i. To dla kwaternionów
chyba bym się załamał zanim bym zaprogramował wszystkie kombinacje znaków + i / i jeszcze kod który to wyszukuje ze stringa.
Czy znacie jakieś sposoby na to ażeby "wyłowić" te dwie wartości ze Stringa ze znakami ? i,j,k to już sobie mogę dopisać przy wyświetlaniu bo format jest zawsze ten sam ale żeby chociaż liczby zachowały znaki.
Z góry dziękuję za pomoc.