C# kalkulator liczb zespolonych

0

Witam,

Mam poboczny przedmiot totalnie niezwiązany z tematyką studiów na którym programujemy w C# w Visual Studio. Programowanie nie leży w zakresie moich zainteresowań ale przedmiot zaliczyć trzeba więc dlatego proszę o pomoc. Mam do napisania kalkulator liczb zespolonych z podstawowymi funkcjami dodawanie/odejmowanie/mnożenie. Potrafiłbym zrobić zwykły kalkulator ale nie mam pomysłu na te liczby zespolone z częścią rzeczywista i urojoną. Aktualnie jestem na wersji, w której dane wprowadzane są w 4 textboxy a wynik wyświetlany w 2 labelach (część rzeczywista i urojona). Rozwiązanie mało zaawansowane ale nie wiem jak zrobić inne. Jakieś rady/pomysły?

0

To zadanie nie ma już bardziej konkretnych wymagań ani możliwości dogadania szczegółów z prowadzącym? Jeśli nie, to popatrz, jak wygląda i działa kalkulator wbudowany w Windows. ;)

  1. Wyświetlacz: wszystko pokazywać w jednym textboxie, który jest tylko do odczytu.
  2. Klawiatura: przyciski z cyframi 0-9 i przecinek, przycisk "i" (do podania części urojonej), przyciski +, -, *, =.
  3. Działanie: użytkownik wpisuje część rzeczywistą, naciska "i", wpisuje część urojoną (tu bym się wzorowała na działaniu xy z kalkulatora Windows). Część urojona pojawia się po spacji jako sama liczba, "i" za nią zostanie dopisane po naciśnięciu przycisku z działaniem. Potem użytkownik naciska przycisk z działaniem. Potem znowu podaje część rzeczywistą, "i", część urojoną. Na końcu naciska "=" i dostaje wynik. Pozostawiam do rozważenia obsługę wpisywania liczb bez części rzeczywistej lub urojonej.
  4. Bardziej zaawansowane: składanie wielu działań (zamiast "=" można nacisnąć działanie, które zostanie wykonane jako następne) i wyświetlanie historii. To można zrealizować tak, że w textboxie są dwa wiersze i w pierwszym jest historia, a w drugim bieżący wynik (jak w Windows).
0

Ja bym to rozwiązał łopatologicznie - dodał przycisk który by miał wartość " i " . Do momentu w którym będziesz trzymać wszystko w text boxach będzie problem z odseparowaniem wartość i liczbowej od "i".
Więc wyjścia są dwa :

  • bardziej estetyczne na którym masz same przycisku i jeden z nich to "i"
  • na lebiuszka - tak jak pisałeś z text boxami do pisania i do tego przycisk funkcjonalny.

( kalkulator na buttonach nie trudno będzie Ci znaleźć )
Funkcjonalność "i" powinna polegać tylko na Tym, że po dwóch wcisnieciach jest równa -1 a po jednym i

Mam nadzieję, że pomogła :)

Przepraszam za błędy ale wynikają z autokorekty w telefonie. Mam nadzieję, że jest zrozumiałe co napisałem

0

@elamir, mi się Twoje rozwiązanie podoba. Możesz ewentualnie po textboxach pobierających części urojone dodać label z literą i. Jeśli chcesz rozbudować, to warto dodać historię działań i wyników (aby dało się prosto policzyć np. (z_1 + z_2)*(z_3 - z_4).

1 użytkowników online, w tym zalogowanych: 0, gości: 1