回 帖 发 新 帖 刷新版面

主题:恳请帮助,有点急/

[em18]10个数的最大公约数。您要不嫌麻烦和简单,能给在下写一下源码最好。拜托了。

回复列表 (共3个回复)

沙发

第一个数和第二个数的最大公约数,和第三个求最大公约数,求出来的结果再和第四个求,如此一直求完。
两个数的最大公约数不难吧?辗转相除法,不赘述了

板凳

新手入门。。。?不好意识想看源码临摹

3 楼

我试过了,可以,你自己看看吧
var
a:array[1..10]of integer;
  i,j,k:integer;
Function  gcd(a,b:integer):integer;
var
i:integer;    
begin
  for i:=1 to a do  
  if (a mod i=0)and(b mod i=0)then gcd:=i;
end;
begin
  for i:=1 to 10 do read(a[i]);
  for i:=1 to 9 do
    for j:=2 to 10 do
      a[j]:=gcd(a[i],a[j]);
  k:=a[10];
  writeln(k);
end.

我来回复

您尚未登录,请登录后再回复。点此登录或注册