Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2006-12-08 10:35:56

  whale - Członek DUG

whale
Członek DUG
Skąd: Cambridge
Zarejestrowany: 2005-09-01

kalkulator liczb zespolonych

Witam
mam do zrobienia kalkulator liczb zespolonych w c++: 

Zaprogramuj w C++ kalkulator Liczb Zespolonych. Program ma obejmować następujące klasy:   
- klasa LiczbaZespolona jest klasą reprezentującą liczbę zespoloną w postaci algebraicznej, klasa posiada zatem dwa argumenty: LRzeczywista i LUrojona oraz funkcje: Ustaw, Wyzeruj i Pokaz,

- klasa Kalkulator jest kompozycją dwóch atrybutów klasy LiczbaZespolona
i posiada funkcje: Dodaj, Odejmij, Pomnoz, Podziel i Pokaz.

przedmiot te rozpocząłem tydzień temu jako totalny nowicjusz. i do niedzieli mam zrobić właśnie ten kalkulator. skrypt jest całkowicie nie zrozumiały wszelkie podręczniki wprowadzają klasy, konstruktory  itp. stopniowo po zapoznaniu ze składnią. a tu na dzień dobry to i ma to działać.
czy mógłby mnie ktoś pokierować jak to zrobić od czego zacząć.

posiłkowałem gręboszem i thinking in c++ żeby cokolwiek zrozumieć.
więc rozumię że celem klasy jest mozliwośc utworzenie obiektu jak np int a który ma jakiś właściwiści.
i robi się to
class jakaśklasa { };
skoroliczy zespolone w postaci algebraicznej LRzeczywista i LUrojona to muszę określić dwie zmienne float
LRzeczywista, LUrojona; teraz trzeba określić te funkcje Ustaw (czyli ja rozumię że trzeba za pomocą cin  dwie liczby zespolone), Wyzeruj i Pokaz , ale jak zrobić juz dalej to niemam pojęcia.jeszcze coś o konstruktorach mają być w klasie. Czytam i czytam i coraz bardziej jestem zamotany.
bez klas to sobie proadzię ale z klasami ani rusz. proszę o pomoc

Offline

 

#2  2006-12-08 13:12:55

  maryaan - Użytkownik

maryaan
Użytkownik
Skąd: bieszczadzka wioska :)
Zarejestrowany: 2006-12-02

Re: kalkulator liczb zespolonych

nie bylem guru ani z c++ ani z zespolonych ale
klasa liczbazespolona moze wygladac tak:

Kod:

class LiczbaZespolona {
private:
float LR;
float LU;
public:
//<-***
void Ustaw(float tLR, float tLU){
LR = tLR;
LU = tLU;
}
void Wyzeruj(){
LR = 0;
LU = 0;
}
void Pokaz(){
cout << "czesc rzeczywista: " << LR << endl;
cout << "czesc zespolona: " << LU << endl;
}
} 

tam gdzie sa *** mozna wcisnac konstruktor, polega to na tym, ze jezeli tworzysz obiekt klasy LiczbaZespolona to masz niezainicjowane pola, jesli utworzysz konstruktor np

Kod:

LiczbaZespolona (float tLR = 0.0, float tLU = 0.0){
LR = tLR;
LU = tLU;
}

to teraz tworzac obiekt klasy LiczbaZespolona mozesz posluzyc sie konstrukcja

Kod:

LiczbaZespolona(3.2, 3.3)

obiekt bedize zainicjowany zmiennymi z nawiasu, mozesz to sprawdzic wywolujac metode Pokaz(), "= 0.0" jest po to, ze jesli wywolasz kosntruktor bez parametrow, to zmienne przyjma wartosc 0.0, czyli najprosciej mowiac, dzieki temu nadal mozesz tworzyc "puste" obiekty Reszte musisz sprawdzic sam, pisalem z glowy wiec gdzies moze czegos brakowac.

Jesli chodzi o druga klase, to musisz poczytac o przeciazaniu operatorow, typ danych ktorymi bedziesz sie teraz poslugiwal to wlasnie stworzona LiczbaZespolona

edit
pare tematow nizej masz przyklad przeciazania operatorow http://www.dug.net.pl/forum/viewtopic.php?t=5917

Offline

 

#3  2006-12-08 14:04:29

  whale - Członek DUG

whale
Członek DUG
Skąd: Cambridge
Zarejestrowany: 2005-09-01

Re: kalkulator liczb zespolonych

wielkie dzięki popróbuję :-)

Offline

 

#4  2006-12-08 15:03:33

  Rumi - prawiczek erotoman

Rumi
prawiczek erotoman
Skąd: Gorlice
Zarejestrowany: 2004-09-23
Serwis

Re: kalkulator liczb zespolonych

heheh w poprzednim semestrze miałem też kalkulator liczb zespolonych w obiektowym ... mam gdzieś na dysku w jak byś był zainteresowany daj znać na prv to podeśle

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
To nie jest tylko forum, to nasza mała ojczyzna ;-)