![]() |
Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
Liste der Anhänge anzeigen (Anzahl: 1)
Hey Freunde also .... ich hab ein Problem (für mich ist es ein sehhhhrrrr großes Problem :x). Ich hoffe ihr könnt mir helfen ... ich erzähl euch schnell alles (:. Also ich geh auf ein Berufskollege das 2 Jahr schon in Technik ... da haben wir das Fach IT ... die die letztes Jahr auf der schule schon waren also das erste jahr auch da gemacht haben die kennen sich in dem fach voll aus undso (leider nur Ausländer die mich net leiden können sonst hätt ich die gefragt :/. Aufjedenfall hat unser Lehrer beschlossen das jeder eine Kurzpräsentation machen muss (10-15min) über eine "Info" ... Ich hab leider die Info 7 :/ ich hab sie an den Anhang gehängt ... Also ich versteh gar nix :/ ich interessier mich aber eig sehr für programmieren und so ..... Ich muss bis Dienstag ne Powerpoint Präsentation abgeben sowie ein Strucktogramm und ein Programm dazu was kurz zeigen soll für was das gut is ... (er meinte auch noch das ich ein Vergleich machen sollte zwischen der Kopfgesteuerten schleife und noch einer ... ehmm Fußgesteuert ? so heist das glaub ^^)
Hoffe ihr könnt mir ein wenig helfen oder das ein wenig erklären (: (wär echt nett !) Mfg xSkuLL KiiDx |
AW: Hey bin neu hier und brauch direkt Hilfe (:
Hallo und willkommen, :dp:
als erstes würde ich Dich bitten den Titel zu ändern. Dieses kanste über den Bearbeiten-Button machen in Deinem Beitrag. Nun zu Deinem Problem. Was verstehst Du denn genau nicht. Denn wenn ich mit das PDF so durchlese, ist darin die Kopfgesteuerte Schleife recht gut erklärt. Eine fußgesteuerte Schleife wird mit den Befehlen repeat...unitl abgedeckt. Mit Repeat leitest Du die Schleife ein und mit until fragst Du eine Bedingung ab. Ein weiterer Tipp wäre noch die Online-Hilfe von Delphi oder hier die ![]() Edit: Ein gutes ![]() |
AW: Hey bin neu hier und brauch direkt Hilfe (:
Was du suchst sind die Schleifentypen:
Kopf gesteuert for:
Delphi-Quellcode:
while
var i:integer;
for I := 0 to 29 do writeln(I);
Delphi-Quellcode:
Fuß gesteuert:
var i:integer;
while i < 30 do i:=i+1; repeat
Delphi-Quellcode:
Alle Beispiel-Schleifen von mir machen das selbe. Jede Typ hat vor und Nachteile, je nach Anwendung muss man den richtigen Typ wählen.
var i:integr;
repeat i:=i+1; until i = 30; |
AW: Hey bin neu hier und brauch direkt Hilfe (:
Zitat:
|
AW: Hey bin neu hier und brauch direkt Hilfe (:
Also ich weis was das macht ^^ aber ich weis net was ich damit anfangen soll ... und die befehle mit dem struktogrammer kenn ich auch net :( ... Un mit dem Programm Delphie kenn ich mich auch wenig aus :( also was man eintippen muss undso ... zu dem programm muss ich dann noch ne Grafische Oberfläche machen ... mir fällt kein Beispiel ein was ich Programmieren könnte um zu zeigen wie das funktioniert... mache die ne andere info hatten haben zB so mit gewicht ausrechnenn und so. Ich sitz schon den ganzen Tag vorm Pc und schau nur so ---> O.O und versteh gar nix ^^
(in was soll ich den Titel ändern ?) omg Oo was heist jetz while dann ? |
AW: Hey bin neu hier und brauch direkt Hilfe (:
Zitat:
Zitat:
|
AW: Hey bin neu hier und brauch direkt Hilfe (:
Nein das stimmt ich hab dein Link noch net angeschaut ^^ :x schande über mich ! werd jetz ma schauen
ahh Delphie 7 benutzen wir in der Schule falls das wichtig ist ! |
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
mhh okey ... das werd ich mir alles mal irgendwie durchlesen müssen :/ .... habt ihr vllt ne Idee was man für ein Beispiel ausm Alltag nehmen könnte zum programmieren ?
|
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
![]() |
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
Okey viele dank erst mal (: tut mir leid wegen der Rechtschreibung ^^ werde jetzt drauf achten und nicht mehr einfach drauf los schreiben ! Ich werde morgen meine Präsentation mal machen und dann hier mal reinstellen wenn das geht und man es darf :x Vielleicht könnt ihr mir ja dann noch ein paar Tipps geben was ich noch dazu schreiben könnte oder vergessen hab !(:
|
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
OK, dann noch ein paar Details. Zum Thema Struktogramm:
![]() Die dort genannte "Zählergesteuerte Schleife" ist in Delphi die For-Schleife. Sie hat einen Start- und einen Endwert für die interne Zählvariable. Ist der Endwert kleiner als der Startwert, wird die Schleife gar nicht erst durchlaufen. Für die angesprochene Variable kommen nur ordinale Datentypen in Frage, das sind Typen, die einen klar definierten Vorgänger und Nachfolger haben, wie ganze Zahlen, einzelne Zeichen oder Aufzählungstypen. Die "Abweisende (vorprüfende – kopfgesteuerte) Schleife" ist die While-Schleife. Sie hat mindestens eine Schleifenbedingung, welche vor Eintritt in die Schleife geprüft wird/werden. Ist die Kombination dieser Bedingungen nicht (mehr) erfüllt, wird die Schleife nicht durchlaufen. Die "Nicht abweisende (nachprüfende – fußgesteuerte) Schleife" ist die Repeat-Schleife. Diese wird zunächst auf jeden Fall durchlaufen, anschließend wird die Kombination der Bedingungen geprüft. Ist diese weiterhin erfüllt, wird die Schleife erneut durchlaufen, und zwar solange, bis dies nicht mehr der Fall ist. Hier ist Delphi/Pascal übrigens ein Sonderfall gegenüber anderen Sprachen, da es sich hier um eine Abbruchbedingung handelt und nicht wie bei der While-Schleife um eine Schleifenbedingung. Hilft Dir das weiter? |
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
Für die Erklärung/Darstellung baut man sich mit einer Excel Tabelle einen "Papiercomputer" und stellt die aktuelle Programmzeile und den Wert der Variablen dar.
z.B. für dieses hier (kopfgesteuerte Schleife)
Delphi-Quellcode:
wird dann zu (es werden immer nur die Veränderungen eingetragen, dadurch sieht man, was sich wo ändert)
// Start
Wert := 8; while Wert < 10 do begin Wert := Wert + 1; end; // Ende
Code:
Programmschritt | Vergleich | Wert
-----------------+-----------+------ -- Start -- | | ? Wert := 8 | | 8 Wert < 10 | true | Wert := Wert + 1 | | 9 Wert < 10 | true | Wert := Wert + 1 | | 10 Wert < 10 | false | -- Ende -- |
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
-deleted-
|
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
Ich weiß nicht ob es schon erwähnt wurde, aber...
Kopfgesteuerte Schleife: while TRUE do ... auf deutsch solange WAHR führe-aus ... Fußgesteuerte Schleife: repeat ... until TRUE auf deutsch wiederhole ... bis WAHR Der Hauptunterschied ist, dass bei while do zuerst überprüft wird, erst dann wird die Anweisung ausgeführt, bei repeat until wird zuerst die Anweisung ausgeführt und dann erst geprüft ob sie Wiederholt werden soll. Also, bei while do kann es vorkommen, dass die Anweisung kein einziges mal ausgeführt wird, wenn die Bedingung False ist, bei repeat until immer mindestens ein mal ausgeführt, und erst dann wird geprüft ob die Schleife wiederholt wird. Zuerst ein Beispiel für die Kopfgesteuerte while do Schleife:
Delphi-Quellcode:
Hier wird zuerst geprüft ob noch Cola in der Dose ist, wenn ja, dann wird ein Schluck getrunken. Das alles wird wiederholt bis keine Cola mehr in der Dose mehr ist. Dann wird kein Schluck genommen und die Schleife wird beendet.
while Cola-In-Der-Dose do
begin Ein-Schluck-Trinken; end; Jetzt ein Beispiel für die Fußgesteuerte repeat until Schleife:
Delphi-Quellcode:
Hier geht man zuerst zu Arbeit, arbeitet fleißig und guckt alle 10 Minuten auf die Uhr. Solange die Uhrzeit nicht 16:30 Uhr oder größer ist, wird wiederholt fleßig gearbeitet.
repeat
Fleißig-Arbeiten until Uhrzeit >= 16:30 Uhr; Also, im ersten Beispiel wird erst geprüft ob noch Cola in der Dose ist und erst dann solange getrunken bis sie leer ist, im zweiten Beispiel wird zuerst zu Arbeit gegangen und dann geprüft ob schon Feierabend ist ;) |
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
Vielen Dank Freund ! (: Hilft schon mal ein wenig. Bin jetzt von der Schule nachhaus gekommen und werde später die Power Point mal anfangen (hab eig vor sie heute fertig zu stellen ^^). Zum Vergleich zwischen den zwei Schleifen dachte ich ich mach eine Tabelle mit jeweils den verschiedenen Eigenschaften ! Meint ihr das is gut ?
Dann hab ich noch überlegt es mit Grafiken zu erklären also Pfeile undso ^^ da is mir aber bis jetz noch nix eingefallen. Meld mich gegen Abend nochmal und werd die Power Point vielleicht dann hier reinstellen das ihr mir Verbesserungsvorschläge geben könnt (; @Sir Rufo: das hab ich nicht ganz verstanden ^^ also bei den Codes versteh ich noch net so viel :/ |
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
Zitat:
Gruß K-H |
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
@xSkuLL KiiDx
Nun ja, für einen der es verstanden hat, ist es eigentlich ganz simpel. Bei der einen Schleife ist die Abfrage oben, bei der anderen unten. Bei der einen wird zuerst abgefragt, erst dann die Anweisung ausgeführt, bei der anderen wird zuerst die Anweisung ausgeführt und dann geprüft ob sie wiederholt werden soll. Kennst du GoTo? Verwendet man heute nicht mehr, weil man alles eigentlich auch anders lösen kann. Aber vielleicht kann man es nutzen um Schleifen zu erklären. Denn letztendlich kann man mit GoTo und If Then sowohl While do, wie auch Repeat Until nachbauen: Mit GoTo kann man irgendwo hin springen. Dazu muss man zuerst eine Sprungmarke setzten. Das macht man mit Label.
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
label Sprungmarke; var i: Integer; begin ShowMessage('Beispiel mit While do'); i := 0; while i < 3 do begin ShowMessage('Der Wert ist: ' + IntToStr(i)); i := i + 1; end; ShowMessage('Beispiel mit GoTo'); i := 0; Sprungmarke: if i < 3 then begin ShowMessage('Der Wert ist: ' + IntToStr(i)); i := i + 1; GoTo Sprungmarke; end; end;
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
label Sprungmarke; var i: Integer; begin ShowMessage('Beispiel mit repeat until'); i := 0; repeat ShowMessage('Der Wert ist: ' + IntToStr(i)); i := i + 1; until i > 3; ShowMessage('Beispiel mit GoTo'); i := 0; Sprungmarke: i := i + 1; ShowMessage('Der Wert ist: ' + IntToStr(i)); if i < 3 then GoTo Sprungmarke; end; |
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
Zitat:
Gruß K-H |
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
Und ich dachte, das hätte ich in
![]() |
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
Du mußt Verständnis für einen leicht beschränkten alten Sack haben, ich habe mich nie so recht mit den korrekten aber teilweise sehr abstrakten Formulierungen anfreunden können.
Alleine bei Kopf-Gesteuert fällt mir eher Headbanging und Kopfbahnhof ein als while irgendwas do wasüberflüssiges. :-) Gruß K-H |
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
Zitat:
|
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
Der aktuelle Programmschritt ist im Quelltext rot unterlegt und dort wo etwas geändert wird ist gelb unterlegt. Und
Delphi-Quellcode:
kann man einfach übersetzen und bedeutet "so lange <Bedingung> wahr ist mache"
while <Bedingung> do
|
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
Das mit GoTo sollte man nicht mehr benutzen
Is zwar schön usw aber nein mfg |
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
Liste der Anhänge anzeigen (Anzahl: 1)
Soo hab jetzt erstmal die Infos die auf dem Info Blatt reingepackt ^^ Das Ihr mal seht wie ichs Ungefähr haben will hab ich jetzt mal die unfertige Power Point dran gehängt ... leider bin ich noch net fertig aber dachte lieber jetzt mal hochladen weil um die zeit noch mehr on sind (: ... Bei der Gliederung bin ich mir unsicher was ich da alles mit rein nehmen soll :/ ... hab die 3 Folie dann Erklärung genannt (weis net ob das ne gute Wahl war :P) ... Aufjedenfall wollt ich bei der Erklärung noch 2 weitere Folien dazu machen ! einmal noch eine mit einer Grafik die das irgendwie beschreibt oder ein Screen ausm Programm (weis noch net :/) ... Ja bei dem Vergleich hab ich wie schon gesagt an eine Tabelle gedacht wie man auch in der Power Point sehen kann ... ich werd jetzt dann noch weitere Infos dazu schreiben und die mit den Infos ausm Inet irgendwie mischen oder so ähnlich :DD
Also wie schon gesagt die Präsentation is NOCH UNFERTIG !!! (net das jetzt einer kommt und sagt öhh jah da steht ja noch net viel ^^) Der gute Herr Lehrer mag alles sehr schlicht und keine Unterstreichungen !!! -.- (vllt sollte ich noch sagen das ich mit Präsentationen sehr wenig Erfahrung haben und oft sehhhhhrrrr aufgeregt bin ^^ ) |
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
Aus den Beiträgen weiter oben geht es eigentlich schon hervor:
Wenn ZUERST die Bedingung geprüft wird, kommt die Programmausführung nie in den Schleifenkörper hinein. Du kannst damit praktisch ein ganzes 'schrecklich wichtiges' Programm abschirmen - als Beispiel würde sich eine Passwort-Eingabe anbieten. Nur wenn das Pw stimmt, funktioniert der 'Inhalt'. Wenn die Schleife mal einfach so los startet, geht die Programmausführung jedenfalls 1 x durch den Schleifenkörper, um DANACH abzubrechen, weil die Bedingung eben nicht erfüllt ist. Daher ideal für so Zählschleifen. Vielleicht hilft das bei der Beispielfindung... |
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
also wie ich das jetzt verstanden habe ... passwort wird eingeben ----> Falsch ! Schleife schaltet sich ein und man muss erneut das Passwort eingeben bis es stimmt ? wenns stimmt wird der Inhalt Freigegeben ? so hab ich das jetzt irgendwie verstanden Oo stimmt das ? :D sorry ich bin NOCH net so schlau wie ihr bitte habt Verständnis :x
|
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
Ja, am ANFANG wird das eingegebene Passwort auf Richtigkeit geprüft (KOPF) - und nur wenn true herauskommt geht's ab ins Innere der Schleife - sonst gleich hinter die Ende-Marke (wie's in der Aufgabenstellung auch steht). Hinter der Ende-Marke sollte (zumindest für das Beispiel) der Programm-Abbruch/Ende stehen. In Wirklichkeit gibt es meist noch Varianten (zum Beispiel eine (fußgesteuerte Zählschleife), die vielleicht 3 Eingabeversuche zulässt - und dann erst zum Programm-Abbruch/Ende führt.
|
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
okey also ist eine Schleife wie ein Tresor ? :D oder ? so kann man das doch eig bezeichnen
|
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
Für die KOPFgesteuerte und das Beispiel: ja.
Du bist glücklich in die Schleife gekommen (Passwort stimmt)? Dann fangen die Troubles nämlich erst an, weil es sich um die erwähnte Endlos-Schleife handelt. Du musst dem User also die Möglichkeit geben, aus dem Schleifenkörper heraus die Bedingung vom KOPF der Schleife auf false zu setzen, damit er aufhören (= die Schleife sauber verlassen) kann, also ohne Go To und weg! Vielleicht so was wie "WOLLEN SIE ZU ARBEITEN AUFHÖREN ? ( J/N )" - je nach Antwort bleibt der User drinnen oder fliegt raus... Und dadurch ist der Bann der Endlos-Schleife gebrochen, weil es damit eben möglich ist, da 'rauszukommen! |
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
@xSkuLL KiiDx
Wie gesagt, ich weiß nicht ob es schon erwähnt wurde (ist keine Bösartigkeit, aber ich lese auch nicht jeden Beitrag)... Was die Folien angeht, ist vor allem die dritte Folie etwas missverständlich. Dort steht zum Beispiel: Zitat:
Wenn, dann wäre die Behauptung für Schleifen gültig: Zitat:
Zitat:
Zitat:
Zitat:
Zitat:
|
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
Okey danke ! ich werds gleich nochmal verbessern ... wollte heute meine Präsentation fertig stellen und schon mal das Strucktogramm anfangen (was sich für mich eig unmöglich anhört ^^) ... habt ihr vllt noch ein paar Sachen die man noch in die PP einbauen kann ? zB ein Schaubild ? hab bisher kein geeignetes gefunden :/ oder ein Ausschnitt von einem Screen vom Programm ? oder findet ihr das unnötig weil ich das ja am Schluss nochmal zeige und erkläre ?
Immer her mit den Tipps ! :D Mfg xSkuLL KiiDx ahh ja vllt hat noch einer ne Idee für das Programm ... hab ihn heut nochmal gefragt und er meinte man muss eins haben ausm Alltag was es aber noch net irgendwie gibt.... hab ja schon gedacht sowas wie schon erwähnt zu machen ... also Passwort und dann schleife aber dann dachte ich das gibts ja schon überall das ist langweilig oder nicht ? |
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
Delphi-Quellcode:
wie wär's damit?
assignfile(myfile,'C:\temp\testtext');
reset(myfile); repeat readln(myfile,satz); until eof(myfile) or (pos('Testtext',Satz)>0); closefile(myfile); assignfile(myfile,'C:\temp\testtext'); reset(myfile); while not(eof(myfile)) and (pos('Testtext',Satz)=0) do readln(myfile,satz); closefile(myfile); Hab allerdings nichts getestet! Gruß K-H |
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
Liste der Anhänge anzeigen (Anzahl: 1)
Danke ! (: das ist jetzt schon ein Programm oder ? oder Struktogramm Oo ? neeh Programm ! ... Hab jetz mal kurz die Sachen in der PP geändert ! hab sie nochmal angehängt (:
|
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
Guten Abend,
![]() Dort enthalten sind schon Templates für verschiedene Schleifen. Grüße Klaus |
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
Danke ! aber ich hab schon ein Programm ... wir verwenden in der Schule "Struktogrammer" glaub so heißt das ^^
|
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
Zitat:
![]() ![]() Zitat:
Delphi-Quellcode:
So in der Art auch das mit mit Repeat Until und der Arbeit
const
DosenInhalt = 330; //ml NormSchluck = 20; //ml var GetraenkInhalt, SchluckInhalt, AnzahlSchlucke: Integer; begin GetraenkInhalt := DosenInhalt; AnzahlSchlucke := 0; ShowMessage('In der Getränkedose befinden sich ' + IntToStr(GetraenkInhalt) + ' ml.'); while GetraenkInhalt > 0 do begin if GetraenkInhalt > NormSchluck then SchluckInhalt := NormSchluck else SchluckInhalt := GetraenkInhalt; GetraenkInhalt := GetraenkInhalt - SchluckInhalt; AnzahlSchlucke := AnzahlSchlucke + 1; ShowMessage('In der Getränkedose befinden sich noch ' + IntToStr(GetraenkInhalt) + ' ml.'); end; ShowMessage('Die Getränkedose ist leer.' + #13#10 + 'Es wurden ' + IntToStr(AnzahlSchlucke) + ' Schlucke getrunken.'); end; |
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
Also das mit der Cola find ich sehr geil ^^ werde morgen mal das Programm schreiben ! Werd mich jetz mit dem Struktogramm ein wenig auseinander setzten ^^ (ohjeh) ... Die Grafik hab ich so verstanden wie ... also Passwort richtig oder falsch ... und dann Inhalt ja oder nein ...stimmt oder ? (:
(noch ne kurze Frage am Rand ... hab mir noch überlegt die Zeichen oder halt die Befehle zur kopfgesteuerten Schleife zu erklären ,,, meint ihr das is gut ? Die PP soll ja so ca 10-15 min gehen ) |
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
Jajn, denn ob ein Passwort richtig oder falsch ist, prüfe ich mit einer if then Abfrage. Wenn es aber ein Konsolenprogramm ist und ich kein GoTo nutzen will, meinetwegen. Dann aber mit repeat until. Wobei man auch an ein Abbruch der Abfrage denken sollte.
|
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
wie sollte ich des dann erklären ? hättest du vllt irgendwie nen Vorschlag ? (:
Ich muss zu dem Programm noch eine grafische Oberfläche machen oder wie das heißt also mit Buttons |
AW: Kopf- und Fußgesteuerte Schleifen [Verständnisfrage]
Bitte Leute :O breucht noch ein paar Tipps !
ShowMessage geht nicht ... hab das dan durch writeln ersetzt... stimmt das ? IntToStr geht keider auch nicht :/ |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:17 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