Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]1109[/thread]

Routine für Lösg. math. Funktionen: Brauche Idee oder Vorschlag (Seite 2)



<< |< 1 2 3 4 >| >> 37 Einträge, 4 Seiten
lichtkind
 2004-05-06 17:06
#10964 #10964
User since
2004-03-22
5680 Artikel
ModeratorIn + EditorIn
[Homepage]
user image
3. an dritter stelle hast du eine 1 als packst du die in den aktuellen knoten rein
0
/
0
/
- > 1
4. "+" das bedeutet du gehst dem parent knoten hoch und fügst ihm das + an ->

0
/
- > +
/
1

5. jetzt kommt eine 5. die würde normal an diesen knoten eingetragen da der aber schon eine operation beinhaltet machen wir einen neuen child das machst du in dem du dem unten zeiger folgst und dann solange nach rechts gehst bis es nicht weiter geht hei fügst du einen knoten an der 5 bein haltet und der auch
nach links verknüpft sein muss so wie der davor das rechts zeigen muss. kann sein das das alles kompliziert für dich scheint es wird aber relativ kurz und effektiv

0
/
+ <-
/ \
1 5

6.@((1+5)+(1-2)*5)+1 ist ")" das bedeutet das wir nur eins nach oben gehen mit unserem aktuellen zeiger. merke: wir haben 2 variablen deben dem knoten die wir on the fly generieren (in c würde man malloc sagen) 1 variable ist die die immer dorthin zeigt wo ich dir den pfeil aufmale. nennen wir sie constructpointer und die andere zeigt wie schon gesagt auf die wurzel unseres baumes, die nennen wir mal rootpointer

0 <-
/
+
/ \
1 5

leider hab ich meine alten pascal quellen iegendwo gepackt sonst könnt ich es dir in reinem pascal schreiben der knotentyp müsste
so aufgebaut sein um einen zeiger auf sich selbst zu ermöglichen brauchst du noch eine kleine vorwärtsdeklaration

datentyp knotenzeiger = zeiger auf knoten;

datentyp knoten
oben knotenzeiger ;
links knotenzeiger;
rechts knotenzeiger;
unten knotenzeiger;
inhalt integer;
operation char;
end

drück immer auf reload werde dem post immer was anfügen\n\n

<!--EDIT|lichtkind|1083850500-->
Wiki:Tutorien in der Wiki, mein zeug:
kephra, baumhaus, garten, gezwitscher

Es beginnt immer mit einer Entscheidung.
janek
 2004-05-06 17:20
#10965 #10965
User since
2004-02-02
17 Artikel
BenutzerIn
[default_avatar]
klasse ich bin die ganze zeit dabei.
lichtkind
 2004-05-06 17:36
#10966 #10966
User since
2004-03-22
5680 Artikel
ModeratorIn + EditorIn
[Homepage]
user image
schön janek ich mal hier weiter weil es unpraktisch wird

7. "+" die kommt in den aktuellen knoten weil der ja nch leer ist

+ <-
/
+
/ \
1 5

8. ((1+5)+ > ( < 1-2)*5)+1 "(" bedeutet wir gehen wieder eins nach unten weil dort schon einer ist gehen wir noch zusätzlich einen nach rechts

+
/ \
+ 0 <-
/ \
1 5

in wirklichkeit wären das aber mit unserer struktur

+
/
+ - 0 <-
/
1 - 5

jetzt sieht du auch wie das hoch runter links rechts eigentlich funktioniert (bessere vorschläge willkommen!)

usw an der stelle versuch ich mal die allgemeine logik aufzustellen
ich hatte bis jetzt auch schon einen logikfehler drin am interessantesten wird auch die stelle wenn das mal aufkommt das könnte ja auch ein + sein wäre es ein + könnte der baum ja so aussehen

(+)
/
(+)----(-)---(5)
/ / \
(1)-(5) (1) (2)

aber da die 5 mit mal verknüpft ist musst du umstrukturieren
aber mit soner struktur hast du da kein extra aufand du vertaushcst da einfach 2 sachen\n\n

<!--EDIT|lichtkind|1083852018-->
Wiki:Tutorien in der Wiki, mein zeug:
kephra, baumhaus, garten, gezwitscher

Es beginnt immer mit einer Entscheidung.
janek
 2004-05-06 17:47
#10967 #10967
User since
2004-02-02
17 Artikel
BenutzerIn
[default_avatar]
Ich habe jetzt die Typdeklaration geschrieben:

Code: (dl )
1
2
3
4
5
6
7
8
Type KnotenPointer = ^Knoten;
Knoten = Record
Key : Integer;
Links, Rechts : KnotenPointer;
End;

Var Anzahl : Integer;
Wurzel : KnotenPointer;


Laut meinen Unterlagen sollte das so richtig sein.
lichtkind
 2004-05-06 17:56
#10968 #10968
User since
2004-03-22
5680 Artikel
ModeratorIn + EditorIn
[Homepage]
user image
deine unterlagen passen sicher für eine ähnlich lösung
ich bräuchts

Type KnotenPointer = ^Knoten;

Knoten = Record
Key : Integer;
Op : Char;
Links, Rechts,Oben, Unten : KnotenPointer;
End;

Var Construktor,Generator, Wurzel : KnotenPointer;

den generator brauchst du zu allokieren. also um neue knoten zu erzeugen und dann den mit dem zu verknüpfen auf den dein construktor zeigt.\n\n

<!--EDIT|lichtkind|1083852112-->
Wiki:Tutorien in der Wiki, mein zeug:
kephra, baumhaus, garten, gezwitscher

Es beginnt immer mit einer Entscheidung.
janek
 2004-05-06 18:00
#10969 #10969
User since
2004-02-02
17 Artikel
BenutzerIn
[default_avatar]
Ok den Gedanken, die Formel in eine Baumstruktur zu packen, habe ich verstanden. Scheint mir auch passend zu sein.

Doch leider weiss ich noch nichts konkretes damit anzufangen.

Ich bin wohl nicht der geborene Programmierer.
lichtkind
 2004-05-06 18:02
#10970 #10970
User since
2004-03-22
5680 Artikel
ModeratorIn + EditorIn
[Homepage]
user image
beim ersten mal an der uni dacht ich auch das ist zu viel aufwand
aber ich merke jetzt erst die schönheit der lösung

nein das kriegen wir schon hin halt durch oder gib mal deine icq dann kann ich dir schneller helfen\n\n

<!--EDIT|lichtkind|1083852230-->
Wiki:Tutorien in der Wiki, mein zeug:
kephra, baumhaus, garten, gezwitscher

Es beginnt immer mit einer Entscheidung.
janek
 2004-05-06 18:08
#10971 #10971
User since
2004-02-02
17 Artikel
BenutzerIn
[default_avatar]
Ich finde meine ICQ Nr jetzzt nicht auf anhieb. Kann ich mich später bei dir per ICQ melden?

Ich muss jetzt schnell zur Arbeit.

Vielleicht hast du am Abend noch kurz Zeit für mich?

Würde mich sehr erfreuen.
lichtkind
 2004-05-06 19:04
#10972 #10972
User since
2004-03-22
5680 Artikel
ModeratorIn + EditorIn
[Homepage]
user image
die berechnung der struktur ist ein 4 zeiler
selbst in pascal
habs grad ausgeklügelt
Wiki:Tutorien in der Wiki, mein zeug:
kephra, baumhaus, garten, gezwitscher

Es beginnt immer mit einer Entscheidung.
Strat
 2004-05-06 19:34
#10973 #10973
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
schau dir mal CPAN:Regexp::Common -> balanced an...
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/
<< |< 1 2 3 4 >| >> 37 Einträge, 4 Seiten



View all threads created 2004-05-06 15:50.