请高手解释一下此程序??????

来源:百度知道 编辑:UC知道 时间:2024/09/28 08:03:27
const a=45,b=27;
var x,y,g,m;
procedure swap;
var temp;
begin
temp:=x;
x:=y;
y:=temp;
end;
procedure mod;
x:=x-x/y*y;
begin
x:=a; y:=b;
call mod;
while x <> 0 do
begin
call swap;
call mod;
end;
g:=y;
m:=a*b/g;
write(g,m);
end;
这是PL/0程序,请问这段程序的执行顺序是怎样的,本人实在想不明白!

const a=45,b=27;
var x,y,g,m;

procedure swap;
var temp;
begin
temp:=x;
x:=y;
y:=temp;
end;

procedure mod;
x:=x-x/y*y;

begin //程序开始点
x:=a; y:=b;
call mod; //调用 过程mod
while x <> 0 do
begin
call swap; //调用 过程swap
call mod; //调用 过程mod
end;
g:=y;
m:=a*b/g;
write(g,m);
end;

这样可以没?