求n 个数的最小公倍数!(要用pascal语言做,今晚必回!)

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/05 18:04:57
求n 个数的最小公倍数!(要用pascal语言做,今晚必回!)

求n 个数的最小公倍数!(要用pascal语言做,今晚必回!)
求n 个数的最小公倍数!(要用pascal语言做,今晚必回!)

求n 个数的最小公倍数!(要用pascal语言做,今晚必回!)
var a:array[1..1000]of longint;
x,y,n,i:longint;
function gcd(n,m:qword):qword;
var r,t:qword;
begin
if n

var
a:array[1..100000]of longint;
n,i,j,min,t,sum:longint;
bln:boolean;
begin
readln(n);
for i:=1 to n do
read(a[i]);
min:=maxlongint;
for i:=1 to n do
...

全部展开

var
a:array[1..100000]of longint;
n,i,j,min,t,sum:longint;
bln:boolean;
begin
readln(n);
for i:=1 to n do
read(a[i]);
min:=maxlongint;
for i:=1 to n do
if a[i]sum:=min;
for i:=1 to 100000 do
begin
bln:=true;
for j:=1 to n do if (min*i) mod a[j]<>0 then begin bln:=false;break;end;
if bln then begin sum:=min*i;break;end;
end;
writeln(sum);
end.

收起

Var
a:array[1..10000] of longint;
n,i,ans,s:longint;
Function Gcd(a,b:longint):longint;
Begin
if b=0 then exit(a);
exit(Gcd(b,a mod b));
End;
Begin
...

全部展开

Var
a:array[1..10000] of longint;
n,i,ans,s:longint;
Function Gcd(a,b:longint):longint;
Begin
if b=0 then exit(a);
exit(Gcd(b,a mod b));
End;
Begin
readln(n);
read(ans);
for i:=2 to n do
Begin
read(s);
ans:=ans*s div gcd(ans,s);
End;
writeln(ans);
End.
解释一:Gcd求的是最大公约数
解释二:a*b=Gcd(a,b)*(a,b的最小公倍数)

收起

program dsf;
var n,i:integer;
a:array[1..100]of integer;
procedure yf(x:integer;var y:integer);
var i,:integer;
begin
i:=1;
while x mod y<>0 do
begin

全部展开

program dsf;
var n,i:integer;
a:array[1..100]of integer;
procedure yf(x:integer;var y:integer);
var i,:integer;
begin
i:=1;
while x mod y<>0 do
begin
i:=i+1;
x:=x*i;
end;
end;
begin
readln(n);
for i:=1 to n do
readln(a[i]);
for i:=1 to n do
yf(a[i],a[i+1]);
end.

收起