AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

case of

Ein Thema von inst666 · begonnen am 11. Dez 2004 · letzter Beitrag vom 11. Dez 2004
 
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#7

Re: case of

  Alt 11. Dez 2004, 15:06
Hallo inst666,

erstens musst du nicht jedes Mal die Komplette Unit posten, die relevante Prozedur/Funktion reicht eigentlich aus.
Nun zu deinem ersten Code:
Delphi-Quellcode:
procedure TZeichen.Button1Click(Sender: TObject);
var zeichen, fehler :integer;
    ok :boolean;
begin
   val ( ein.text, zeichen, fehler ) ;
   ok := (fehler=0) ;
    if ok then

      begin

        case zeichen of
        A..Z : ausgabe := 'Buchstabe' ;
        a..z : ausgabe := 'Kleinbuchstabe';
        1..10 : ausgabe := 'Zahl' ;
        '§','$','%' : ausgabe := 'Sonderzeichen';
        end;
        aus.Text := ausgabe ;
      end;
end;
Du versuchst hier, den Text der im Edit "ein" eingegeben wurde, in eine Zahl umzuwandeln. Nachdem du aber auch mit der Eingabe von Buchstaben rechnest, wird fehler jedes Mal ungleich 0 sein.

Es geht aber viel einfacher:
Delphi-Quellcode:
procedure TZeichen.Button1Click(Sender: TObject);
var
  ausgabe: String;
begin
  if Length(ein.Text) = 0 then //Wenn kein Text eingegeben wurde, geben wir eine Fehlermeldung aus
    ausgabe := 'Kein Text eingegeben!'
  else //sonst sehen wir nach was los ist
  begin
    case ein.Text[1] of //im Moment interessiert uns nur das erste Zeichen
      'A'..'Z': ausgabe := 'Grossbuchstabe';
      'a'..'z': ausgabe := 'Kleinbuchstabe';
      '0'..'9': ausgabe := 'Ziffer';
      else
        ausgabe := 'Sonderzeichen';
    end;
  end;
  ShowMessage(ausgabe); //wir geben den Text aus
end;
In der Case-Abfrage fragen wir ab, ob es sich um einen Grossbuchstaben, einen Kleinbuchstaben oder eine Ziffer handelt. Dabei darf zwischen den Hochkommas immer nur ein Zeichen vorkommen. Der else-Zweig tritt ein, falls keine der vorherigen Bedingungen wahr sind. Wir nehmen in dem Fall an, dass es sich um ein Sonderzeichen handelt. Ich hoffe der Code verdeutlicht die Verwendung von case ein bisschen..

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
 

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 14:27 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-2025 by Thomas Breitkreuz