REPEAT...UNTIL
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Label4: TLabel;
Label6: TLabel;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
end;
var
Form1: TForm1;
implementation
var a,b,c,d,ggt, Rest :integer;
kgV :real;
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
a:=strtoint(edit1.Text);
b:=strtoint(edit2.Text);
c:=a;
d:=b;
repeat
Rest:=a mod b;
a:=b;
b:=Rest;
until Rest=0;
ggt:=a;
kgV:=c*d/ggt;
Label4.Caption:='Der ggT beträgt '+floattostr(ggt);
Label6.Caption:='Das kgV beträgt '+floattostr(kgV);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
edit1.Text:='';
edit2.text:='';
label4.Caption:='';
label6.Caption:='';
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
close;
end;
end.
Schreibe das Programm, so um, dass der größte gemeinsame Teiler mit Hilfe eines Unterprogramms function ermittelt wird.
Zur Wiederholung : siehe Quadratische Funktion