Einzelnen Beitrag anzeigen

Satty67

Registriert seit: 24. Feb 2007
Ort: Baden
1.566 Beiträge
 
Delphi 2007 Professional
 
#6

AW: verschachtelte if funktion

  Alt 16. Sep 2010, 22:13
Ich glaube Du prüfst grundsätzlich zuviel auf einmal und aus der falschen Perspektive.

Weniger auf einmal prüfen prüfen geht durch ein Helferlein in Form einer kleinen Boolean Variable:
Delphi-Quellcode:
var
  ZugGueltig : Boolean;
begin
  ZugGueltig := true; // Erstmal gültig annehmen

  // Jetzt jede Reihe einzeln prüfen und Zug bei Bedarf ungültig machen
  if Edit3.Text = '0then
  begin
    if (Edit1.Text = '0') or (Edit2.Text = '0') then
      ZugGueltig := false;

    if (Edit6.Text = '0') or (Edit9.Text = '0') then
      ZugGueltig := false;
  end;

  // Am Ende auswerten
  if ZugGueltig then
    showmessage('Die Bedingungen wurden erfüllt');
.
So ist das zwar ein klein wenig mehr Schreibarbeit, aber erstmal wesentlich leichter zu kontrollieren. Ganz am Schluss (wenn es richtig funktioniert) kann man die Einzelbedingungen immer noch klammern und mit einem and verbinden.

Interessant wäre auch die Kontrolle aus Sicht des Steines, statt des Ziele, aber das muss nicht sein.

Geändert von Satty67 (16. Sep 2010 um 22:18 Uhr)
  Mit Zitat antworten Zitat