Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi case befehl (https://www.delphipraxis.net/80259-case-befehl.html)

laura 5. Nov 2006 23:51


case befehl
 
hallo zusammen!

ich hab eine frage, hab gerade angefangen delphi zu lernen und dem entsprechend is auch meine frage!also wir sollen ein programm schreiben dass wenn mandie nummer 1 eingibt der monatsname januar erscheint un halt bei 2 der name Februar bis zum 12 monat mit dem namen Dezember.dazu soll der case-befehl verwendet werden.ich hab im internet gestöbert, aber nirgendswo wird wirklich erklärt wie man case benutzt was zwischen case...of stehen muss usw!kann mir vielleicht jemand helfen?
danke

xaromz 6. Nov 2006 00:09

Re: case befehl
 
Hallo und Herzlich Willkommen!

Die case-Anweisung ist eigentlich recht einfach aufgebaut:
Delphi-Quellcode:
case <Ausdruck> of
  <Möglichkeit 1>: Anweisung(en);
  <Möglichkeit 2>: Anweisung(en);
  <Möglichkeit n>: Anweisung(en);
  else
    Anweisung(en);
end;
<Ausdruck> ist das, was Du auswerten willst, in Deinem Fall die eingegebene Zahl.
Die einzelnen Möglichkeiten sind die Werte, die der Ausdruck annehmen kann. Nach dem Doppelpunkt kommt jeweils die Anweidung (oder der Anweisungsblock mit begin..end), die ausgeführt werden soll, wenn der Ausdruck dem Wert entspricht.
Am Ende gibt es noch den else-Zweig, der ausgeführt wird, wenn keine Bedingung zutrifft. Der else.Zweig ist optional (und für Deine Aufgabe nicht nötig).
Ein Beispiel wäre:
Delphi-Quellcode:
case Eingabe of
  1:
    ShowMessage('Sie haben 1 gewählt');

  2:
    ShowMessage('Sie haben 2 gewählt');

  3:
  begin
    ShowMessage('Die 3 war''s. Ich beende mich jetzt!');
    Application.Terminate;
  end;
 
  else
    ShowMessage('Irgendeine Zahl wurde gewählt');
end;
Hierbei ist "Eingabe" die Variable, die geprüft wird. Aber Achtung: Diese muss ordinal, also abzählbar sein. Ein String funktionert nicht.

Gruß
xaromz


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:28 Uhr.

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