.
.
Geändert von Merovinger (03.07.2021 um 03:08 Uhr)
Abgesehen von break nicht, hab aber auch selbigen niemals gebraucht, da man auch einfach while bzw. repeat Schleifen nutzen kann und die dann sehr viel eleganter sind. Du kannst auch im Prinzip eine boolische Variable definieren und es so loesen:
Aber in 100% der Faelle laesst es sich mit while besser loesen. Siehe auch hier:
--Signature.
Hat Delphi ein so krass unterschiedliches Verständnis von Logik? o_O
Für mich sieht es so aus, als würde die while-Schleife in jedem Fall bis I = 99 laufen. Wenn I > 10 ist zwar not (I > 10) false, aber da dazwischen ein OR steht ist das egal, da ((I <= 99)) ja immer noch true ist. Habe ich da jetzt nen Denkfehler drin?
Auf jeden Fall inkrementierst du aber I nicht. Wenn die Code Snippets identisch sein sollen, muss das auch mit rein.![]()
while ((I <= 99) OR not (I > 10)) do
Mache weiter, solange eine der folgenden Bedingungen gegeben ist:
a) I ist kleiner oder gleich 99
b) I ist nicht groesser als 10
while ((I <= 99) AND not (I > 10)) do
wuerde heissen das beide Bedingungen erfuellt sein muessen und
while ((I <= 99) XOR not (I > 10)) do
das Entweder die eine oder die andere true sein darf, aber nicht beide, was bei OR durchaus geht.
@Merovinger: Die Schleife wird beim ersten Beispiel nicht abgebrochen. Sie lauft durch bis zum bitteren Ende, aber ohne irgendwas zu tun. Wenn du nicht grad bis x-Millionen durchzaehlen laesst macht das keinen grossen Unterschied.
edit: lol, jetzt wo ich es mir durchlese muesste es tatsaechlich AND sein. damn.
--Signature.
Geändert von Crash-Override (17.08.2008 um 14:46 Uhr)