Einzelnen Beitrag anzeigen

hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#1

Elegante Lösung gesucht, 3 Boolean-Werte, nur einer darf gesetzt sein

  Alt 22. Feb 2016, 16:09
Hallo,

3 Variablen
Delphi-Quellcode:
var
  B1, B2, B3: Boolean;
  bOK: Boolean;
begin
  //
  bOK := ??
end;
bOK soll jetzt nur True sein, wenn nur einer der 3 Werte True ist.
Mein bisheriger Ansatz:

Delphi-Quellcode:
bOK := False;
if B1 then
begin
  bOK := True;
end;
if B2 then
begin
  if bOK then
  begin
    bOK := False;
    Exit;
  end;
  bOK := B2;
end;
if Be then
begin
usw.

Irgendwie ist heute Montag ...

Wie löst man das eleganter ???

Ich will nicht viele And's und Or's haben.

Delphi-Quellcode:
  if ((B1=True) and (B2=False) and (B3=False)) or
     ((B1=False) and (B2=True) and (B3=False)) or
     ((B1=False) and (B2=False) and (B3=True)) then
  begin
    bOK := True;
  end;
Naja, jetzt habe ich halt doch and's und or's ...


Heiko
Heiko

Geändert von hoika (22. Feb 2016 um 16:21 Uhr)
  Mit Zitat antworten Zitat