Einzelnen Beitrag anzeigen

Waschbaerpelz

Registriert seit: 29. Apr 2010
5 Beiträge
 
Delphi 5 Standard
 
#5

Re: Taschenrechner mit Proceduren. Probleme beim Diviieren

  Alt 29. Apr 2010, 20:39
Habe es soweit in den Griff bekommen und das Programm startet jetzt. Leider kommt dann, wenn ich dividieren möchte folgende Fehlermeldung: Gleitkommaüberlauf!

Das Programm sieht folgender Maßen aus:

Delphi-Quellcode:
type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Label1: TLabel;
    Button1: TButton;
    Edit2: TEdit;
    Label2: TLabel;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    Label3: TLabel;
    Edit3: TEdit;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
  private
    procedure eingabe(x,y: integer);
    procedure addiere(x,y: integer; z:integer);
    procedure ausgabe(var z: integer);

    procedure subtrahiere(x,y: integer; var z:integer);

    procedure multipliziere(x,y: integer; var z:integer);

    procedure eingabe2(x,y: real);
    procedure dividiere(x,y: real; var z: real);
    procedure ausgabe2(var z: real);
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.eingabe(x,y: integer);
begin
x:= StrToInt(edit1.text);
y:= StrToInt(edit2.text);
end;


procedure TForm1.addiere(x,y: integer; z:integer);
begin
z:=x+y;
end;


procedure TForm1.ausgabe(var z: integer);
begin
edit3.text:= InttoStr(z);
end;

procedure TForm1.Button1Click(Sender: TObject);
var a,b,c: integer;
begin
eingabe(a,b);
addiere(a,b,c);
ausgabe(c);
end;




procedure TForm1.subtrahiere(x,y: integer; var z: integer);
begin
z:=x-y;
end;

procedure TForm1.Button2Click(Sender: TObject);
var a,b,c: integer;
begin
eingabe(a,b);
subtrahiere(a,b,c);
ausgabe(c);
end;


procedure TForm1.multipliziere(x,y: integer; var z:integer);
begin
z:=x*y;
end;

procedure TForm1.Button3Click(Sender: TObject);
var a,b,c: integer;
begin
eingabe(a,b);
multipliziere(a,b,c);
ausgabe(c);
end;


procedure TForm1.eingabe2(x,y: real);
begin
x := StrToFloat (Edit1.text);
y := StrToFloat (Edit2.text);
end;

procedure TForm1.dividiere(x,y: real; var z: real);
begin
z:=x/y;
end;

procedure TForm1.ausgabe2(var z: real);
begin
edit3.text:= floattostr(z);
end;

procedure TForm1.Button4Click(Sender: TObject);
var a,b,c: real;
begin
eingabe2(a,b);
dividiere(a,b,c);
ausgabe2(c);
end;

end.
  Mit Zitat antworten Zitat