unit Eingabe;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Buttons, StdCtrls;
type
TForm1 = class(TForm)
Edit1: TEdit;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button4: TButton;
Button5: TButton;
BitBtn1: TBitBtn;
Label1: TLabel;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
var Fehler, n: Integer;
Wert, Zeichen: String;
c: Char;
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
var i : Integer;
begin
(* Startbedingungen *)
Fehler := 0;
Label1.Caption := '';
(* Eingabe lesen *)
Wert := Edit1.Text;
(* überprüfen, ob etwas eingegeben ist *)
if Length(Wert) = 0
then
ShowMessage('Bitte etwas eingeben!')
else
begin
(* jedes einzelne Zeichen erfassen *)
for i := 1 to Length(Wert) do
begin
(* Ein String ist ein Array aus Chars *)
c := Wert[i];
n := Ord(c);
(* Fehler ausschließen *)
IF (n < 48) OR (n > 57) THEN Fehler := 1;
end;
(* Fehler entdeckt? *)
IF Fehler <> 0 THEN ShowMessage('Es wurde keine natürliche Zahl eingegeben!'+ #13 + #10 + 'Bitte korrigieren!');
(* Programm fortsetzen oder nicht *)
IF Fehler = 0 THEN
begin
(* normales Programm *)
Label1.Caption := 'O.K.';
end;
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
var Zahl: Integer;
begin
(* Startbedingungen *)
Fehler := 0;
Label1.Caption := '';
try
Zahl:=StrToInt(Edit1.Text);
except
begin
Fehler := 1;
ShowMessage('Es wurde keine ganze Zahl eingegeben!'+ #13 + #10 + 'Bitte korrigieren!');
end;
end;
(* Programm fortsetzen oder nicht *)
IF Fehler = 0 THEN
begin
(* normales Programm *)
Label1.Caption := 'O.K.';
end;
end;
procedure TForm1.Button3Click(Sender: TObject);
var Zahl: Real;
begin
(* Startbedingungen *)
Fehler := 0;
Label1.Caption := '';
try
Zahl:=StrToFloat(Edit1.Text);
except
begin
Fehler := 1;
ShowMessage('Es wurde keine relle Zahl eingegeben!'+ #13 + #10 + 'Bitte korrigieren!');
end;
end;
(* Programm fortsetzen oder nicht *)
IF Fehler = 0 THEN
begin
(* normales Programm *)
Label1.Caption := 'O.K.';
end;
end;
procedure TForm1.Button4Click(Sender: TObject);
var i : Integer;
begin
(* Startbedingungen *)
Fehler := 0;
Label1.Caption := '';
(* Eingabe lesen *)
Wert := Edit1.Text;
(* überprüfen, ob etwas eingegeben ist *)
if Length(Wert) = 0
then
ShowMessage('Bitte etwas eingeben!')
else
begin
(* jedes einzelne Zeichen erfassen *)
for i := 1 to Length(Wert) do
begin
(* Ein String ist ein Array aus Chars *)
c := Wert[i];
n := Ord(c);
(* Fehler ausschließen *)
IF (n < 65) OR (n > 90) THEN Fehler := Fehler + 1;
IF (c = 'Ä') OR (c = 'Ö') OR (c = 'Ü') THEN Fehler := Fehler - 1;
end;
(* Fehler entdeckt? *)
IF Fehler <> 0 THEN ShowMessage('Es wurden nicht nur Großbuchstaben eingegeben!'+ #13 + #10 + 'Bitte korrigieren!');
(* Programm fortsetzen oder nicht *)
IF Fehler = 0 THEN
begin
(* normales Programm *)
Label1.Caption := 'O.K.';
end;
end;
end;
procedure TForm1.Button5Click(Sender: TObject);
var i : Integer;
begin
(* Startbedingungen *)
Fehler := 0;
Label1.Caption := '';
(* Eingabe lesen *)
Wert := Edit1.Text;
(* überprüfen, ob etwas eingegeben ist *)
if Length(Wert) = 0
then
ShowMessage('Bitte etwas eingeben!')
else
begin
(* jedes einzelne Zeichen erfassen *)
for i := 1 to Length(Wert) do
begin
(* Ein String ist ein Array aus Chars *)
c := Wert[i];
n := Ord(c);
(* Fehler ausschließen *)
IF (n < 65) OR (n > 122) THEN Fehler := Fehler + 1;
IF (c = 'Ä') OR (c = 'Ö') OR (c = 'Ü') OR (c = 'ä') OR (c = 'ö') OR (c = 'ü') OR (c = 'ß') THEN Fehler := Fehler - 1;
end;
(* Fehler entdeckt? *)
IF Fehler <> 0 THEN ShowMessage('Es wurde keine einfaches Wort eingegeben!'+ #13 + #10 + 'Bitte korrigieren!');
(* Programm fortsetzen oder nicht *)
IF Fehler = 0 THEN
begin
(* normales Programm *)
Label1.Caption := 'O.K.';
end;
end;
end;
end.