Repeat语句的应用

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Edit1: TEdit;
    Label3: TLabel;
    Edit2: TEdit;
    Label4: TLabel;
    Edit3: TEdit;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);   //“计算”按钮
var
  n,m,temp,r: integer;
begin
  n := strtoint(edit1.Text);
  m := strtoint(edit2.Text);
  if n > m then                                   //辗转相除法
  begin                                           //两数交换
    temp := n;
    n := m;
    m := temp;
  end;
  repeat                                          //相当于其他语言的do…While
    r := m mod n;
    m := n;
    n := r;
  until r = 0;
  edit3.Text := format('%d',[m]);                 //format相当于C语言的printf
end;

end.

 

posted @ 2011-12-03 11:25  endsnow  阅读(312)  评论(0)    收藏  举报