什么牌子的定位器最好:编写一个函数(PASCAL)判断两数是否互质

来源:百度文库 编辑:中科新闻网 时间:2024/05/09 11:09:41
用PASCAL写一个BOOLEAN型函数!
function hz(a,b:integer):boolean;
begin
...
end;
注意程序算法的效率!!!!!!!!

function hz(a,b:integer):boolean;
VAR
c,m,n,i:integer;
BEGIN
m:=a;
n:=b;
hz:=true;
IF m>n then
BEGIN
c:=m;
m:=n;
n:=c;
END;
FOR i:=2 to m do
BEGIN
IF (((m mod i)=0) and ((n mod i)=0)) then
BEGIN
hz:=false;
break;
END;
END;
END;

1:先比较a,b看谁小,令x等于较小值
2:令i从2到x的平方根取整,当i能被a整除时,看i能否被b整除,若能整除,a,b不互质。

function hz(a,b:integer):boolean;
var
r:integer;
begin
repeat
r:=a mod b;
a:=b;
b:=r
until b=0;
hz:=a=1
end;