Difference between revisions of "If/de"

From Lazarus wiki
Jump to navigationJump to search
m (Korrektur der Korrektur und Erweiterung, da waren mehrere Fehler drin)
m (Fixed syntax highlighting; deleted category included in page template)
 
(One intermediate revision by one other user not shown)
Line 18: Line 18:
 
<br>
 
<br>
 
Es gibt nur eine Anweisung (Statement):<br>
 
Es gibt nur eine Anweisung (Statement):<br>
<syntaxhighlight>
+
<syntaxhighlight lang=pascal>
 
   If intA = 4 Then ...;
 
   If intA = 4 Then ...;
 
</syntaxhighlight>
 
</syntaxhighlight>
 
    
 
    
Es gibt nur eine Anweisung (Statement) für den If Fall und es nur eine Anweisung für den Sonstfall:<br>
+
Es gibt nur eine Anweisung (Statement) für den If Fall und es gibt nur eine Anweisung für den Sonstfall. ACHTUNG: Die Anweisung nach dem If Fall wird ausnahmsweise nicht mit Semikolon abgeschlossen:<br>
<syntaxhighlight>
+
<syntaxhighlight lang=pascal>
   If intA = 4 Then ...;
+
   If intA = 4 Then ...
 
   Else ...;
 
   Else ...;
 
</syntaxhighlight>
 
</syntaxhighlight>
 
<br>
 
<br>
 
Es gibt mehrere Anweisungen (Statements):<br>
 
Es gibt mehrere Anweisungen (Statements):<br>
<syntaxhighlight>
+
<syntaxhighlight lang=pascal>
 
   If intA = 4 Then
 
   If intA = 4 Then
 
   Begin
 
   Begin
Line 38: Line 38:
 
<br>
 
<br>
 
Es gibt mehrere Anweisungen (Statements) für den If Fall und nur eine Anweisung für den Sonstfall:<br>
 
Es gibt mehrere Anweisungen (Statements) für den If Fall und nur eine Anweisung für den Sonstfall:<br>
<syntaxhighlight>
+
<syntaxhighlight lang=pascal>
 
   If intA = 4 Then
 
   If intA = 4 Then
 
   Begin
 
   Begin
Line 49: Line 49:
 
<br>
 
<br>
 
Es gibt mehrere Anweisungen (Statements) für den If Fall und mehrere Anweisungen für den Sonstfall:<br>
 
Es gibt mehrere Anweisungen (Statements) für den If Fall und mehrere Anweisungen für den Sonstfall:<br>
<syntaxhighlight>
+
<syntaxhighlight lang=pascal>
 
   If intA = 4 Then
 
   If intA = 4 Then
 
   Begin
 
   Begin
Line 62: Line 62:
 
</syntaxhighlight>
 
</syntaxhighlight>
 
<br>
 
<br>
 +
 
=Verknüpfte Abfrage mit 'Or' und 'And'=
 
=Verknüpfte Abfrage mit 'Or' und 'And'=
 
<br>
 
<br>
 
Es gibt im If Fall mehrere mögliche Fälle für die es nur ein Ergebnis gibt.  
 
Es gibt im If Fall mehrere mögliche Fälle für die es nur ein Ergebnis gibt.  
 
Der Zweig wird durchlaufen, wenn einer der beiden Fälle wahr ist:
 
Der Zweig wird durchlaufen, wenn einer der beiden Fälle wahr ist:
<syntaxhighlight>
+
<syntaxhighlight lang=pascal>
 
   If (intA = 4) Or (intA = 7) Then
 
   If (intA = 4) Or (intA = 7) Then
 
     ...;
 
     ...;
Line 73: Line 74:
 
Es gibt im If Fall nur dann ein Ergebnis wenn die beiden Fälle wahr sind.
 
Es gibt im If Fall nur dann ein Ergebnis wenn die beiden Fälle wahr sind.
 
Der Zweig wird durchlaufen, wenn beide beiden Fälle wahr sind:
 
Der Zweig wird durchlaufen, wenn beide beiden Fälle wahr sind:
<syntaxhighlight>
+
<syntaxhighlight lang=pascal>
 
   If (intA = 4) And (intB = 22) Then
 
   If (intA = 4) And (intB = 22) Then
 
     ...;
 
     ...;
Line 83: Line 84:
 
Es wird der Zweig wird durchlaufen, bei dem der Fall wahr ist.<br>
 
Es wird der Zweig wird durchlaufen, bei dem der Fall wahr ist.<br>
 
Da zwei Datenfelder (intA und intB) abgefragt werden, kann dieses Beispiel nicht durch eine Case Anweisung ersetzt werden.<br>
 
Da zwei Datenfelder (intA und intB) abgefragt werden, kann dieses Beispiel nicht durch eine Case Anweisung ersetzt werden.<br>
<syntaxhighlight>
+
<syntaxhighlight lang=pascal>
 
   If intA = 4 Then
 
   If intA = 4 Then
 
     ...;
 
     ...;
Line 98: Line 99:
 
Es wird der Zweig wird durchlaufen, bei dem der Fall wahr ist.<br>
 
Es wird der Zweig wird durchlaufen, bei dem der Fall wahr ist.<br>
 
Da ein Datenfeld (intA) abgefragt wird, kann dieses Beispiel durch eine [[Case/de|Case]] Anweisung ersetzt werden.
 
Da ein Datenfeld (intA) abgefragt wird, kann dieses Beispiel durch eine [[Case/de|Case]] Anweisung ersetzt werden.
<syntaxhighlight>
+
<syntaxhighlight lang=pascal>
 
   If intA = 4 Then
 
   If intA = 4 Then
 
     ...;
 
     ...;
Line 110: Line 111:
 
     ...;
 
     ...;
 
</syntaxhighlight>
 
</syntaxhighlight>
<br>
 
<br>
 
--[[User:Olaf|Olaf]] 17:51, 19 October 2012 (UTC)
 
[[Category:Reserved words/de]][[Category:FreePascal/de]]
 

Latest revision as of 10:10, 17 February 2020

Deutsch (de) English (en) suomi (fi) français (fr) русский (ru) 中文(中国大陆)‎ (zh_CN)

Zurück zu den reservierten Wörtern.
Zurück zu den Verzweigungen / bedingten Anweisungen.

IF

Der Ausdruck if gehört zu den Schlüsselwörtern.
Die If Anweisung ist eine Verzweigung im Programm. Hier wird die Entscheidung getroffen, welcher Zweig des Programms abgearbeitet wird.

Eine If Abfrage kann eine einzelne Anweisung, als auch einen Anweisungsblock, enthalten.
Eine einzelne Anweisung wird mit einem Semikolon abgeschlossen.
Benötigt man mehrere Anweisungen so müssen diese in einem Anweisungsblock zusammengefasst werden.
Ein Anweisungsblock wird mit dem Schlüsselwort 'begin' begonnen und mit dem Schlüsselwort 'end' beendet.
Auf ein Schlüsselwort 'end' folgt immer ein Semikolon. Die Ausnahme davon ist das Schlüsselwort 'else'.
Folgt direkt auf ein Schlüsselwort 'end' ein Schlüsselwort 'else' so folgt nach dem Schlüsselwörtern 'end' und 'else' kein Semikolon.

Ein Ausdruck wird abgefragt


Es gibt nur eine Anweisung (Statement):

  If intA = 4 Then ...;

Es gibt nur eine Anweisung (Statement) für den If Fall und es gibt nur eine Anweisung für den Sonstfall. ACHTUNG: Die Anweisung nach dem If Fall wird ausnahmsweise nicht mit Semikolon abgeschlossen:

  If intA = 4 Then ...
  Else ...;


Es gibt mehrere Anweisungen (Statements):

  If intA = 4 Then
  Begin
    ...;
    ...;
  End;


Es gibt mehrere Anweisungen (Statements) für den If Fall und nur eine Anweisung für den Sonstfall:

  If intA = 4 Then
  Begin
    ...;
    ...;
  End
  Else
    ...;


Es gibt mehrere Anweisungen (Statements) für den If Fall und mehrere Anweisungen für den Sonstfall:

  If intA = 4 Then
  Begin
    ...;
    ...;
  End
  Else
  Begin
    ...;
    ...;
  End;


Verknüpfte Abfrage mit 'Or' und 'And'


Es gibt im If Fall mehrere mögliche Fälle für die es nur ein Ergebnis gibt. Der Zweig wird durchlaufen, wenn einer der beiden Fälle wahr ist:

  If (intA = 4) Or (intA = 7) Then
    ...;


Es gibt im If Fall nur dann ein Ergebnis wenn die beiden Fälle wahr sind. Der Zweig wird durchlaufen, wenn beide beiden Fälle wahr sind:

  If (intA = 4) And (intB = 22) Then
    ...;


Verknüpfung mehrerer Abfragen

In beiden gezeigten Fällen, kann für jeden einzelnen Fall ein Anweisungsblock eingefügt werden.

Es wird der Zweig wird durchlaufen, bei dem der Fall wahr ist.
Da zwei Datenfelder (intA und intB) abgefragt werden, kann dieses Beispiel nicht durch eine Case Anweisung ersetzt werden.

  If intA = 4 Then
    ...;
  Else If intA = 7 Then
    ...;
  Else If intA = 8 Then
    ...;
  Else If intB = 1 Then
    ...;
  Else 
    ...;


Es wird der Zweig wird durchlaufen, bei dem der Fall wahr ist.
Da ein Datenfeld (intA) abgefragt wird, kann dieses Beispiel durch eine Case Anweisung ersetzt werden.

  If intA = 4 Then
    ...;
  Else If intA = 7 Then
    ...;
  Else If intA = 8 Then
    ...;
  Else If intA = 1 Then
    ...;
  Else 
    ...;