自定义函数·最大公约数@Pascal学习日记

我们使用的是辗转相除,请阅读下面的代码,并自己完成测试

program gcd(input, output);
var
    n, m : integer;

function gcd(n, m : integer) : integer;    {自定义函数greatest common divisor ( gcd )}
var
    rem : integer;{辗转相除的余数}
begin
    while m <> 0 do
    begin
        rem := n mod m;
        n := m;
        m := rem;       
    end;
    gcd := n
end;

begin
    write('greatest common divisor = (n, m) : ');
    read(n, m);
    writeln('GCD(', n, ', ', m, ') = ', gcd(n, m))
end.

同时你注意到: 最小公倍数 = n ×m ÷ 最大公约数,
这样一来,你很容易算出最小公倍数啦。

测试的例子:

命令行界面.png

1.3 3
2.1 5
3.7 8
4.16 160
5.0 21
……


温馨提示:不要复制粘贴,你需要的练习是:自己动手慢慢敲代码
一些有用的链接:
CP Pascal Editor下载链接
Free Pascal下载链接
那些初高中甚至小学就接触编程的人最后到了什么样的境界?
高中生如何学习编程?

2015年4月21日01:57:17 @kaikai

你可能感兴趣的:(自定义函数·最大公约数@Pascal学习日记)