Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Algorithmen, Datenstrukturen und Klassendesign (https://www.delphipraxis.net/78-algorithmen-datenstrukturen-und-klassendesign/)
-   -   erweiterte IF - Bedingung (https://www.delphipraxis.net/184659-erweiterte-if-bedingung.html)

himitsu 13. Apr 2015 09:00

AW: erweiterte IF - Bedingung
 
OR ~ +
AND ~ *

http://docwiki.embarcadero.com/RADSt...von_Operatoren
http://de.wikipedia.org/wiki/Operatorrangfolge

DeddyH 13. Apr 2015 09:03

AW: erweiterte IF - Bedingung
 
Sag ich ja.

himitsu 13. Apr 2015 09:29

AW: erweiterte IF - Bedingung
 
Ich auch ... nur nochmal zur Sicherheit, falls es keiner glauben will.

#4 :angle2:

DeddyH 13. Apr 2015 09:31

AW: erweiterte IF - Bedingung
 
Das geht in dem Monster-Post allerdings unter, Du solltest vielleicht Psalm und Vers angeben :mrgreen:

BadenPower 13. Apr 2015 09:36

AW: erweiterte IF - Bedingung
 
Unter Berücksichtigung des Programmierstils des TE müsste das so aussehen:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin

  if (     ((Edit1.Text = 'Sekretäriat') or (Edit1.Text = 'sekretäriat'))
       and (Edit2.Text = 'Faldera123')
     ) then
   begin
    Form2.Show;
    Form1.Hide
   end;

  if (     ((Edit1.Text = 'Schüler') or (Edit1.Text = 'schüler'))
       and (Edit2.Text = 'Klasse123')
     ) then
   begin
    Form3.Show;
    Form1.Hide
   end;

  if (     ( not ((Edit1.Text = 'Sekretäriat') and (Edit2.Text = 'Faldera123')) )
       and ( not ((Edit1.Text = 'sekretäriat') and (Edit2.Text = 'Faldera123')) )
       and ( not ((Edit1.Text = 'Schüler') and (Edit2.Text = 'Klasse123')) )
       and ( not ((Edit1.Text = 'schüler') and (Edit2.Text = 'Klasse123')) )
     ) then
   begin
    ShowMessage('falsch');
   end;

end;
Aber es sollte doch wohl 'Sekretariat' heissen und nicht 'Sekretäriat'.

DeddyH 13. Apr 2015 09:43

AW: erweiterte IF - Bedingung
 
Das müsste dann logisch diesem hier entsprechen:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  if ( ((Edit1.Text = 'Sekretäriat') or (Edit1.Text = 'sekretäriat'))
       and (Edit2.Text = 'Faldera123')
     ) then
   begin
    Form2.Show;
    Form1.Hide
   end

  else if ( ((Edit1.Text = 'Schüler') or (Edit1.Text = 'schüler'))
       and (Edit2.Text = 'Klasse123')
     ) then
   begin
    Form3.Show;
    Form1.Hide
   end

  else
   begin
    ShowMessage('falsch');
   end;

end;
[edit] Zu dem Zugriff auf die globale Form1-Variable sag ich mal nichts. [/edit]

BadenPower 13. Apr 2015 10:01

AW: erweiterte IF - Bedingung
 
Zitat:

Zitat von DeddyH (Beitrag 1297436)
[edit] Zu dem Zugriff auf die globale Form1-Variable sag ich mal nichts. [/edit]

Ich habe es bewußt nicht geändert, da ich nicht sicher sein konnte, ob die Abfragen im Programm des TE in Form1 ausgeführt werden.

DeddyH 13. Apr 2015 10:04

AW: erweiterte IF - Bedingung
 
Ich ja auch nicht ;)

himitsu 13. Apr 2015 10:11

AW: erweiterte IF - Bedingung
 
Wenn der TE das dann mal anpasst, dann könnte er seinen Units, Forms und Komponenten auch gleich ein paar sprechende Bezeichner verpassen. :stupid:

Jumpy 13. Apr 2015 11:22

AW: erweiterte IF - Bedingung
 
[OT]
Sollte es nicht lieber Sekretariat heißen. Das hat zwar nichts mit dem Fehler zu tun, würde aber die spätere Akzeptanz des Programms beim Deutschlehrer steigern.

Hoffentlich hab ich jetzt keinen Rechtschreibfehler in meinem besserwisserischen Beitrag hier. :-D
[/OT]


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:29 Uhr.
Seite 2 von 3     12 3      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz