编程FREE PASCAL
1.输入正整数a、b,输出它们的最小公倍数和最大公约数(用分别用函数Lcm(x,y),Gcd(x,y)实现)。2.输入正整数a、b、c,输出它们的最小公倍数和最大公约数(...
1. 输入正整数a、b,输出它们的最小公倍数和最大公约数(用分别用函数Lcm(x,y),Gcd(x,y)实现)。
2. 输入正整数a、b、c,输出它们的最小公倍数和最大公约数(在上一题基础上修改,不能修改自定义函数)。
3. 输入正整数p、q,输出以p为最小公倍数和q为最大公约数的正整数对有多少个。
输入
60 3
输出
4
以下不用输出:(3,60) (12,15) (15,12) (60,3)
4. 随机产生两个正整数数列,分别存于数组a,b(用rndArr(x)过程实现);
分别打印数组a,b(用print(x)过程实现);
分别将数组a,b中的元素按升序排序(用sort(x)过程实现);
分别打印数组a,b(用print(x)过程实现);
将有序的数组a,b合并为仍然有序的数组c(用merge(x,y,z)实现)。
打印数组c(用print(x)过程实现); 展开
2. 输入正整数a、b、c,输出它们的最小公倍数和最大公约数(在上一题基础上修改,不能修改自定义函数)。
3. 输入正整数p、q,输出以p为最小公倍数和q为最大公约数的正整数对有多少个。
输入
60 3
输出
4
以下不用输出:(3,60) (12,15) (15,12) (60,3)
4. 随机产生两个正整数数列,分别存于数组a,b(用rndArr(x)过程实现);
分别打印数组a,b(用print(x)过程实现);
分别将数组a,b中的元素按升序排序(用sort(x)过程实现);
分别打印数组a,b(用print(x)过程实现);
将有序的数组a,b合并为仍然有序的数组c(用merge(x,y,z)实现)。
打印数组c(用print(x)过程实现); 展开
2个回答
展开全部
{NO.1}
var x,y,l,m:longint;
function lcm(a,b:longint):longint;
var t:longint;
begin
if a<b then begin
t:=a;a:=b;b:=t;
end;
lcm:=a;
while lcm mod b>0 do inc(lcm,a);
end;
function gcd(a,b:longint):longint;
begin
gcd:=a*b div lcm(a,b);
end;
begin
readln(x,y);
l:=lcm(x,y);
m:=gcd(x,y);
writeln(l);
writeln(m);
end.
---------分割线-------------
{no.2}
var x,y,l,m,ll,mm,a,b,c:longint;
function lcm(a,b:longint):longint;
var t:longint;
begin
if a<b then begin
t:=a;a:=b;b:=t;
end;
lcm:=a;
while lcm mod b>0 do inc(lcm,a);
end;
function gcd(a,b:longint):longint;
begin
if b=0 then gcd:=a
else gcd:=gcd (b,a mod b);
end ;
begin
readln(a,b,c);
l:=lcm(a,b);
ll:=lcm(l,c);
m:=gcd(a,b);
mm:=gcd(m,c);
writeln(ll);
writeln(mm);
end.
-----------------------
打累了……3、4你给我邮箱我发给你
e-mail:jyt0211@163.com
var x,y,l,m:longint;
function lcm(a,b:longint):longint;
var t:longint;
begin
if a<b then begin
t:=a;a:=b;b:=t;
end;
lcm:=a;
while lcm mod b>0 do inc(lcm,a);
end;
function gcd(a,b:longint):longint;
begin
gcd:=a*b div lcm(a,b);
end;
begin
readln(x,y);
l:=lcm(x,y);
m:=gcd(x,y);
writeln(l);
writeln(m);
end.
---------分割线-------------
{no.2}
var x,y,l,m,ll,mm,a,b,c:longint;
function lcm(a,b:longint):longint;
var t:longint;
begin
if a<b then begin
t:=a;a:=b;b:=t;
end;
lcm:=a;
while lcm mod b>0 do inc(lcm,a);
end;
function gcd(a,b:longint):longint;
begin
if b=0 then gcd:=a
else gcd:=gcd (b,a mod b);
end ;
begin
readln(a,b,c);
l:=lcm(a,b);
ll:=lcm(l,c);
m:=gcd(a,b);
mm:=gcd(m,c);
writeln(ll);
writeln(mm);
end.
-----------------------
打累了……3、4你给我邮箱我发给你
e-mail:jyt0211@163.com
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询