![]() |
Re: Einführung Stack Klasse 12
nur mal so am Rande...ich habe alles gelesen, aber von diesem 1 mal, merkt man sich doch nichts! das sind so viele informationen. wenn ihr euch das behalten könnt, dann freu ich mich für euch.
|
Re: Einführung Stack Klasse 12
Dann hast du dir sicher auch schon das Programm runtergeladen, was ich dir indirekt verlinkt habe, oder? Zumindest das könntest du dir schon ansehen. Da sind die Prozeduren drinne, die du brauchst. Das meinte ich mit genauer angucken.
Zitat:
Zitat:
|
Re: Einführung Stack Klasse 12
Dann hast Du das mit den Referenz-Links aber falsch verstanden. Der Text da ist nicht zum auswendig lernen, das ist eine Beschreibung und eine spätere Referenz.
Im ersten geposteten ![]() |
Re: Einführung Stack Klasse 12
So, nochmal zum Mitschreiben: ein Stack ist ein Stapelspeicher. Stell Dir eine unten geschlossene Röhre vor, die im Innendurchmesser dem eines Eurostückes entspricht. Am Anfang ist diese Röhre leer (empty). Nun wirfst Du ein Eurostück hinein (push). Zuoberst (top) liegt nun dieses Eurostück. Nun wirfst Du noch eins hinein, dadurch ist dies natürlich dann das oberste (top). Wenn Du jetzt eins herunternimmst (pop), ist dies logischerweise das zuletzt eingeworfene und das oberste ist wieder das zuerst eingeworfene. Nimmst Du dieses nun auch noch herunter, ist der Stapel wieder leer. Ist doch ganz einfach, oder nicht?
|
Re: Einführung Stack Klasse 12
das habe ich verstanden, nur mit dem top war mir nicht klar was gemeint, also ist es das oberste element. hiermit konnte ich nichts anfangen: top: Stapel --> Element
|
Re: Einführung Stack Klasse 12
Ein Stack für "Arme" ist auch mein Quick&Dirty Stack für Integer, den nehme, wenn ich keine Prüfungen brauche, sondern schnellen Zugriff.
Evtl. hilft die einfache Programmierung ja, den Sinn der einzelnen Funktion zu verstehen:
Delphi-Quellcode:
type
TStack = array[0..1000] of Integer; // Stack für 1001 Integer Werte var Stack : TStack; StackPos : Integer = -1; procedure StackPush(i : Integer); begin inc(StackPos); Stack[StackPos] := i; end; function StackPop : Integer; begin Result := Stack[StackPos]; dec(StackPos); end; function StackTop : Integer; begin Result := Stack[StackPos]; end; function StackEmpty : Boolean; begin Result := StackPos < 0; end; |
Re: Einführung Stack Klasse 12
Er braucht nur 5 Werte, also sollte man nicht übertreiben mit dem Array. Lieber nur 5 Werte und alles darüber ins Nichts schicken, also daß der Stack immer voller wird und der sich dann wundert wieso in seinen Edit1 bis Edit5 der Stack nicht abgebaut wird.
//EDIT: Ich hab mir gerade diese Seite angeguckt: ![]() Das steht etwas von Klasse. Braucht Razor90 also jetzt eine Klasse oder reichen Funktionen und Prozeduren? |
Re: Einführung Stack Klasse 12
Das war nur ein Copy&Paste aus einer Unit ;) Hab' nur eine um 1‰ falsche Bemerkung angepasst
|
Re: Einführung Stack Klasse 12
Zitat:
Also bin ich in der Regel auch nicht so kleinlich und helfe gerne, bzw. helfe ich erst ein mal. Erst dann beobachte ich die Reaktion. Kommt nichts, fehlt jede Eigeninitiative oder wird in Zukunft nur ständig gefragt und man merkt, es ist ein Copy&Paste Typ, dann kann man sich immer noch überlegen den Aufwand zu reduzieren. |
Re: Einführung Stack Klasse 12
Nur dass es in diesem Falle von vornherein klar ist, dass es sich um eine Schulaufgabe handelt. Und von unmöglichen Deadlines in der Schule... sagen wir mal so: Gibt's eher selten. ;)
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:24 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz