在线求解,追加积分:pascal程序:高精度最小公倍数

来源:百度知道 编辑:UC知道 时间:2024/07/06 17:15:00
给出两个正整数a,b(1<=a,b<=10^100),求这两个数的最小公倍数
一定要pascal程序.感激不尽!
一楼的注意数据范围:0<=a,b<=10^100,啊,int64都存不下,肯定要用高精度除法和阿基米德辗转相除法

program gaojin_chu;
const max=200;
var a,d,x:array[0..max] of integer;
n,m,t:integer;
begin
write('N=');readln(n);
write('M=');readln(m);
write(n,'/',m,'=');
a[0]:=n;d[0]:=n div m;write(d[0],'.');
x[0]:=n mod m;
for t:=1 to max do
begin
if x[t-1]=0 then exit;
a[t]:=x[t-1]*10;
d[t]:=a[t] div m;write(d[t]);
x[t]:=a[t] mod m;
end;
writeln;
end.

我会:
var a,b,s,t:longint;
begin
readln(a,b);
repeat
s:=s+1;
if (a mod s =0)and (b mod s = 0) then t:=1;
until t=1;
writeln(s);
end.

是欧几里得,我呵呵了