LoL AttAcK: FORA Strona Główna LoL AttAcK: FORA


FAQFAQ  Mapa GoogleMapa Google  SzukajSzukaj  UżytkownicyUżytkownicy  GrupyGrupy
RejestracjaRejestracja  ZalogujZaloguj  Chat

Poprzedni temat «» Następny temat
Programowanie
Autor Wiadomość
ah 
Łowcy


Ulubiona gra: chowanego
Wiek: 21
Wysłany: Nie 29 Kwi, 2007 10:39   Programowanie

No więc mam takiego problema..

Mam napisać program który wstawia i rysuje drzewo BST (wstawia z równoważeniem)...

może byłby ktoś wstanie pomóc bo mi powoli nerwy siadają :D

(delphi ew. c++ - wersja 6.0 bo w niej siedze :D )
_________________



(c) by Skorzenny :mrgreen:
___________________________
 
 
 
piatas 
t3ch


Ulubiona gra: 3dmark
Wiek: 24
Wysłany: Nie 29 Kwi, 2007 11:34   

Ale na jakim jestes etapie?
Rozumiem, ze to ma byc rysowanie w oparciu o winapi a nie jakas konsolowa namiastka grafiki? Kolka i kreski w api - chyba tyle potrzebujesz :mrgreen: . Co do api, wiecej nie pomoge bo czuje do niego wstret :mrgreen: .

Jesli chodzi o koncepcje napisania drzewa, trzeba dobrze zrozumiec na jakiej zasadzie ono "dziala" - szczerze powiem, mnie sie nie chce w to wglebiac :mrgreen: . Problem nie wyglada na wielce skomplikowany.

Dobra rada, rozrysuj sobie wszystkie klasy a przede wszystkim przeplyw informacji miedzy nimi. Jak pisalem gg w javie plulem sobie w brode, ze tego nie zrobilem. Po mniej wiecej 5klocach koncepcja, ktora mialem w glowie, sie wysypala wlasnie na interfejsach klas. Musialem dodac cala mase klas posrednich - tylko agregowaly dane, ew. troche je mielily. Finalnie wyszla kupa gowna, ktora co prawda dzialala, ale byla kompletnie niezrozumiala - jak to okreslil dr u ktorego to robilem - "panie, to jest kula blotna" :lol: .

edit - mam nadzieje ze nie masz nic przeciwko :mrgreen:
_________________
[|||||][|||||][|||||]
 
 
 
ah 
Łowcy


Ulubiona gra: chowanego
Wiek: 21
Wysłany: Nie 29 Kwi, 2007 14:11   

ehhh ja jestem na "sieciach komputerowych" a nie na "inżynierii oprogramowania" :D

Nie, to jest "bardzo proste", chodzi o to żeby dodawać sobie liczbę do drzewa (implementacja wskaźnikowa :D - jedna struktura danych ) a rysować ma takie małe kółka(połączona kreską :P ) z liczbą która jest tam wstawiona ;-)

a tu jest cała funk. rysująca (tylko że w tablicowaj implementacji):

Kod:
procedure Rysuj(j:drzewo; x,y,t,h:integer);
begin

if j[t].prawa<>0
then begin
      Form1.Image1.Canvas.MoveTo(x,y);
      Form1.Image1.Canvas.LineTo(x+(h div 2),y+40);
      Rysuj(j,x+(h div 2),y+40,j[t].prawa,(h div 2));
     end;
if j[t].lewa<>0
then begin
      Form1.Image1.Canvas.MoveTo(x,y);
      Form1.Image1.Canvas.LineTo(x-(h div 2),y+40);
      Rysuj(j,x-(h div 2),y+40,j[t].lewa,(h div 2));
     end;
if j[t].etykieta<>0
then begin
      Form1.Image1.Canvas.Ellipse(x-15,y-15,x+15,y+15);
      Form1.Image1.Canvas.TextOut(x-Form1.Image1.Canvas.TextWidth(IntToStr(j[t].etykieta))div 2,y-Form1.Image1.Canvas.TextHeight(IntToStr(j[t].etykieta))div 2,IntToStr(j[t].etykieta));
     end;
end;
_________________



(c) by Skorzenny :mrgreen:
___________________________
 
 
 
piatas 
t3ch


Ulubiona gra: 3dmark
Wiek: 24
Wysłany: Nie 29 Kwi, 2007 14:18   

Nie za bardzo rozumiem w czym tkwi problem.

Obiekt klasy drzewo zawiera obiekty klasy wezel. Obiekty klasy wezel na wskaznikach w tym sensie, ze kreujesz je przez wezel jakis_wezel = new wezel(paramewtry konstruktora) i pozniej wskaznikiem jakis_wezel operujesz?

Nie wiem gdzie masz problem - w ten sposob niewiele pomoge.

Ten kod co wkleiles to mi sie nie podoba bo nie jest w C[x] :razz: .

EDIT
A co do implementacji, najprosciej zeby klasa wezel posiadala zmienna wskazujaca na przodka i 2 zmienne wskazujace na potomkow. Niewiele to wnosi bo pewnie sam jestes swiadom, ze tak bdzie najprosciej.
_________________
[|||||][|||||][|||||]
 
 
 
faker 


Wiek: 18
Wysłany: Nie 29 Kwi, 2007 22:21   

a ja wam powiem ze sie gowno znacie i tu jest wszystko zle! to ma byc wszystko napisane z wlaczonym capslockiem, i potem bedziemy myslec co jest jeszcze ewentualnie nie tak.
_________________
Right now I'm on the edge
So don't push me
I aim straight for your head
So don't push me
Fill your ass up with lead
So don't push me
I got something for your ass, keep thinking I'm pussy
 
 
 
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Nie możesz ściągać załączników na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  

Powered by phpBB modified by Przemo © 2003 phpBB Group




Pomysł tej strony zrodził się w chorych umysłach Akiry & Jumpera
Wszelkie prawa zastrzeżone. Kopiowanie materiałów ze strony bez zgody autorów zabronione.

Treści publikowane na tym forum są własnością ziomów którzy je zapodalii i wali nas co oni tam nawymyślali