该函数返回两位数的最大公约数。如果找不到,则返回1。
function GCD( _iNumber1, _iNumber2 : integer ) : integer; var iTemp : integer; begin if _iNumber1 < 0 then _iNumber1 := -_iNumber1; if _iNumber2 < 0 then _iNumber2 := -_iNumber2; repeat if _iNumber1 < _iNumber2 then begin iTemp := _iNumber1; _iNumber1 := _iNumber2; _iNumber2 := iTemp; end; _iNumber1 := _iNumber1 mod _iNumber2; until ( _iNumber1 = 0 ); result := _iNumber2; end;调用:
var
i : integer;
begin
i := GCD( 12, 16 );
ShowMessage( IntToStr( i ) );
end;
Output:
|