AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

erweiterte IF - Bedingung

Ein Thema von MasterDoge · begonnen am 12. Apr 2015 · letzter Beitrag vom 13. Apr 2015
Antwort Antwort
Seite 1 von 2  1 2   
MasterDoge

Registriert seit: 12. Apr 2015
4 Beiträge
 
#1

erweiterte IF - Bedingung

  Alt 12. Apr 2015, 21:52
Guten Abend ihr,
ich habe mit Lazarus angefangen, für die Schule einen Vertretungsplan zu erstellen.
Ich versuche seit einer Stunde, bei bestimmten Fällen keine Nachricht zu schicken:
if (edit1.text='Sekretäriat') or (edit1.text='sekretäriat') and (edit2.text='Faldera123')
then begin
form2.show;
form1.hide;
end;
then begin
form3.show;
form1.hide;
end;
if
not (edit1.text='Sekretäriat') and (edit2.text='Faldera123')
or not (edit1.text='sekretäriat') and (edit2.text='Faldera123')
or not (edit1.text='Schüler') and (edit2.text='Klasse123')
or not (edit1.text='schüler') and (edit2.text='Klasse123')
then
showmessage('Falsch.');
So weit habe ich das bis jetzt, aber es kommt jetzt jedes Mal die Nachrricht "Falsch".
Könnt ihr mir velleicht weiterhelfen?
Lg Tilman

Geändert von MasterDoge (12. Apr 2015 um 22:03 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.344 Beiträge
 
Delphi XE2 Professional
 
#2

AW: erweiterte IF - Bedingung

  Alt 12. Apr 2015, 22:02
setz mal vor dem not jeweils noch eine offene Klammer und vor dem nächsten or eine geschlossene Klammer

oder
Delphi-Quellcode:
var
  S1: String;
  S2: String;

begin
  S1 := AnsiLowerCase(Edit1.Text); //klein schreiben
  S2 := Edit2.Text;
// S2 := AnsiLowerCase(Edit2.Text);

  If ((S1 <> 'sekretäriat') and (S2 = 'Faldera123')) or ((S1 <> 'schüler') and (S2 = 'Klasse123')) then
    ShowMessage('falsch');
end;
Ich schreibe einfach erstmal alles klein (AnsiLowerCase ) - so brauch ich nicht auf die Groß-/Kleinschreibung im Vergleich achten!
(case sensitive)
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<

Geändert von Helmi (12. Apr 2015 um 22:08 Uhr)
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.868 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: erweiterte IF - Bedingung

  Alt 12. Apr 2015, 22:05
Den OR hat eine höhere Priorität wie AND
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.655 Beiträge
 
Delphi 12 Athens
 
#4

AW: erweiterte IF - Bedingung

  Alt 13. Apr 2015, 09:42
Den OR hat eine höhere Priorität wie AND
Ist das nicht genau andersherum? IIRC gilt: NOT > AND > OR
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.316 Beiträge
 
Delphi 12 Athens
 
#5

AW: erweiterte IF - Bedingung

  Alt 13. Apr 2015, 10:00
OR ~ +
AND ~ *

http://docwiki.embarcadero.com/RADSt...von_Operatoren
http://de.wikipedia.org/wiki/Operatorrangfolge
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.655 Beiträge
 
Delphi 12 Athens
 
#6

AW: erweiterte IF - Bedingung

  Alt 13. Apr 2015, 10:03
Sag ich ja.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
MasterDoge

Registriert seit: 12. Apr 2015
4 Beiträge
 
#7

AW: erweiterte IF - Bedingung

  Alt 13. Apr 2015, 12:24
Also: Ich habe in der Schule das Fach Informatik seit einem drei viertel Jahr.
Wir haben über die Osterferien die Aufgabenstellung erhalten, irgendetwas zu programmieren.
Ich bin auf die Idee gekommen, einen Vertretungsplan zu erstellen, welcher nicht für die Schule an sich geeignet ist, sondern einfach eine gute Note gibt, da dieses Projekt ein bisschen umfangreicher ist. Ich habe mit einer Anmeldeform angefangen, welche sich nach richtiger Benutzer - und Passworteingabe entweder in die (neue) Form 2 des Schülers oder in die Form 3 des Sekretariats übergeht:
Code:
procedure TForm1.Button1Click(Sender: TObject);
begin

  if (edit1.text='Sekretariat') or (edit1.text='sekretariat') and (edit2.text='123')
  then begin
  form2.show;
  form1.hide;
  end;
  if (edit1.text='Schüler') or (edit1.text='schüler') and (edit2.text='456')
  then begin
  form3.show;
  form1.hide;
  end;
Das eigentliche Problem, dass sich mir dann gestellt hast, ist dass ich versucht hatte, eine Nachicht anzeigen zu lassen, wenn der Nutzername, oder das Passwort falsch ist.
  Mit Zitat antworten Zitat
BadenPower

Registriert seit: 17. Jun 2009
616 Beiträge
 
#8

AW: erweiterte IF - Bedingung

  Alt 13. Apr 2015, 12:31
Das eigentliche Problem, dass sich mir dann gestellt hast, ist dass ich versucht hatte, eine Nachicht anzeigen zu lassen, wenn der Nutzername, oder das Passwort falsch ist.
Dann sollten die Vorschläge #15 oder besser #16 für Dich das Richtige sein.
Programmieren ist die Kunst aus Nullen und Einsen etwas sinnvollen zu gestalten.
Der bessere Künstler ist allerdings der Anwender, denn dieser findet Fehler, welche sich der Programmierer nicht vorstellen konnte.
  Mit Zitat antworten Zitat
MasterDoge

Registriert seit: 12. Apr 2015
4 Beiträge
 
#9

AW: erweiterte IF - Bedingung

  Alt 12. Apr 2015, 22:38
Also:
Der Pc sagt mir jetzt verschiedene Sachen, unter anderem, bei dem Fall, wo er mich eigentlich einloggen sollte, dass die Eingabe falsch ist, und dann meldet er mich an.
Wenn ich im oberen Fenster falsch bin, zeigt er mir gar keine Nachricht an.
Und wenn ich im unteren Fenster falsch bin, sagt er mir, dass ich Falsch bin, öffnet mir auch gleichzeitig den Vertretungsplan.
ICh habe das mit allen drei der Lösungen ausprobiert, keine funktioniert.
Lg Tilman

Geändert von MasterDoge (12. Apr 2015 um 22:58 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.316 Beiträge
 
Delphi 12 Athens
 
#10

AW: erweiterte IF - Bedingung

  Alt 12. Apr 2015, 23:37
Naja, etwas Wichtiges hast du immernoch vergessen zu erklären, was genau du wie prüfen willst.

Versuch es doch mal als deutschen Satz zu beschreiben.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:37 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 by Thomas Breitkreuz