Registriert seit: 24. Apr 2004
755 Beiträge
Delphi 2010 Professional
|
Re: Vokale Zählen
18. Jun 2006, 22:34
welche funktionen hattest du denn davon nicht? ist doch alles standard?!
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
i: Integer;
vokal, KonstNum, sonderzeichen: Integer;
Satz: String;
begin
vokal := 0;
KonstNum := 0;
sonderzeichen := 0;
// Groß-/Kleinschreibung ignorieren
Satz := AnsiLowerCase(EdtSatz.Text);
// jedes Zeichen des Satzes prüfen:
for i:=1 to length(satz) do
// prüfen ob wir einen Buchstaben haben:
if (satz[i] in ['a'..'z']) then
begin
// unterscheiden zwischen vokalen und Konsonanten
if (satz[i] in ['a', 'e', 'i', 'u', 'o']) then
inc(vokal)
else
inc(KonstNum);
end else
inc(sonderzeichen);
LblVokNum.Caption := IntToStr(vokal);
LblKonstNum.Caption := IntToStr(KonstNum);
LblSonderzeichen.Caption := IntToStr(sonderzeichen);
end;
wenn du das AnsiLowerCase nicht hattest, dann musst du nur die Großbuchstaben bei deinen Abfragen berücksichtigen:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
i: Integer;
vokal, KonstNum, sonderzeichen: Integer;
Satz: String;
begin
vokal := 0;
KonstNum := 0;
sonderzeichen := 0;
// Groß-/Kleinschreibung ignorieren
Satz := EdtSatz.Text;
// jedes Zeichen des Satzes prüfen:
for i:=1 to length(satz) do
// prüfen ob wir einen Buchstaben haben:
if (satz[i] in ['a'..'z']) or (satz[i] in ['A'..'Z']) then
begin
// unterscheiden zwischen vokalen und Konsonanten
if (satz[i] in ['a', 'e', 'i', 'u', 'o', 'A', 'E', 'I', 'U', 'O']) then
inc(vokal)
else
inc(KonstNum);
end else
inc(sonderzeichen);
LblVokNum.Caption := IntToStr(vokal);
LblKonstNum.Caption := IntToStr(KonstNum);
LblSonderzeichen.Caption := IntToStr(sonderzeichen);
end;
|
|
Zitat
|