![]() |
Re: probleme mit For-Schleife
![]() kann ja mal passieren, damit man so nen denkfehler drin hat.. passiert jeden auf kurz oder lang... |
Re: probleme mit For-Schleife
Zitat:
Wie auch immer. Tyrael hat Recht. Das ursprüngliche Problem ist schon lange gelöst. Wenn du den letzten Wert der Schleifenvariable nach Ende der Schleife noch benötigst, musst du ihn innerhalb der Schleife einer weiteren Variable zuweisen, da die Schleifenvariable selbst nach Schleifenende nicht mehr definiert ist. |
Re: probleme mit For-Schleife
Zitat:
Zitat:
wenn i am anfang = 1 (for i:=1 to 4) ist dann ist die zahl der ausführungen = 4 und die Variable (Durchlaufzähler) hat im letzten durchlauf den wert 4 Die Zahl der Ausführungen ist nur dann gleich mit dem Wert des Durchlaufzählers wenn i am anfang = 1 ist! edit: da war wohl jemand schneller ;) |
Re: probleme mit For-Schleife
Zitat:
ist es aber nicht, schluss ende aus, oder definier dir ne neue Sprache DelphiNew oder so Ergänzung: mal ein Beispiel für wäre: Wäre Zahl/0 definiert als 0, so wären viele mathematische Probleme ganz anders ist es aber nicht es ist nicht definiert Gruß |
Re: probleme mit For-Schleife
Zitat:
Zitat:
[Tyraelärgeredit] Zitat:
[/Tyraelärgeredit] P.S.: Auf die Frage brauchst du nicht zu antworten :zwinker: |
Re: probleme mit For-Schleife
Zitat:
|
Re: probleme mit For-Schleife
Das kommt davon, wie Delphi die Schleife im Maschinencode umsetzt:
Code:
Das hat das Resultat, dass die Schleifenvari am Schluß Endwert+1 ist.
MOV CX,0 ;Startwert
schleife: NOP ;hier stehen die Befehle in der Schleife INC CX CMP CX,4 ;Schleifenvari mit Endwert vergleichen JNE schleife ;solange ungleich einen weiteren Durchlauf beginnen |
Re: probleme mit For-Schleife
hey,
nochmal danke an die leute, die mich zum thema zahl der durchläufe und durchlaufzähler aufgeklärt haben ! :-D :thuimb: |
Re: probleme mit For-Schleife
dann haben wir ja alle was gelernt :mrgreen:
|
Re: probleme mit For-Schleife
Bei der FOR-schleife wird der Wert bei "end" automatisch um 1 erhöht, dann wird überprüft, ob die schleife zu Ende ist (Spreich index > 3) und erst dann abgebrochen.
Deswegen hast du nach der Schleife index=4. Mach einfach gleich nach der Schleife index := index - 1; So kriegst du deine 3 zu fassen. :lol: :lol: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:39 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