複数の値の最大公約数を取得するための最も簡単なソリューションを探しています。何かのようなもの:
x=gcd_array(30,40,35) % Should return 5
x=gcd_array(30,40) % Should return 10
これをどのように解決しますか?
どうもありがとう!
gcd(a,b,c) = gcd(a,gcd(b,c))
つまり、再帰を使用できます。
`% GCD OF list of Nos using Eucledian Alogorithm
function GCD= GCD(n);
x=1;
p=n;
while(size(n,2))>=2
p= n(:,size(n,2)-1:size(n,2));
n=n(1,1:size(n,2)-2);
x=1;
while(x~=0)
x= max(p)-min(p);
p = [x,min(p)];
end
n=[n,max(p)];
p= [];
end
'