![]() |
while <-> while not
Hallo Leute,
ich hab eine komische Frage: Wo ist da mein Denkfehler ???? .. wieso gehen nicht beide Ansätze? //breite und display sind Integer NICHT funktionierender Code
Code:
while not breite > display do
begin breite:=breite+260; end; Funktionierender Code
Code:
while breite < display do
begin breite:=breite+260; end; |
AW: while <-> while not
Weil
Code:
was anderes ist als
not breite > display
Code:
Achtung auf die Prioritäten von Operatoren. In Wahrheit schreibst du:
not ( breite > display )
Code:
(not breite) > display
|
AW: while <-> while not
Klammer?
while not (breite > display) do Edit: Langsamer, knapper erklärt, rote Box nicht gehabt. Mist. Zeit für WE :) |
AW: while <-> while not
|
AW: while <-> while not
Delphi hat leider eine Operatorreihenfolge, die m.E. nicht wirklich logisch ist und z.B. von C deutlich abweicht...
|
AW: while <-> while not
kommt drauf an.
NOT ist höchstrangig, genauso wie das unäre Minus (das Vorzeichen, nicht der Operator). AND und OR sind, bezogen auf Verleiche und Operatoren ala +-*/ , halt in der Rangfolge andersrum, als beim C. (wie das NOT im C zählt, weiß ich jetzt nicht) |
AW: while <-> while not
Das die Klammern fehlen ist ja schon gesagt worden. Damit die beiden Ausdrücke aber equivalent sind, dazu fehlt noch ein Gleichheitszeichen.
Also entweder so:
Delphi-Quellcode:
und so
while not (breite > display) do
Delphi-Quellcode:
while breite <= display do
oder so:
Delphi-Quellcode:
und so
while not (breite => display) do
Delphi-Quellcode:
while breite < display do
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:22 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