여러 값 중 가장 큰 공약수를 얻는 가장 쉬운 방법을 모색 중입니다. 예 :복수 (2 개 이상) 숫자의 가장 큰 공약수
x=gcd_array(30,40,35) % Should return 5
x=gcd_array(30,40) % Should return 10
어떻게 해결할 수 있습니까?
감사합니다.
여러 값 중 가장 큰 공약수를 얻는 가장 쉬운 방법을 모색 중입니다. 예 :복수 (2 개 이상) 숫자의 가장 큰 공약수
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
'
[2 개보다 많은 숫자 유클리드 최대 공약수 (
의 중복 가능성 http://stackoverflow.com/questions/1231733/euclidian-greatest-common-divisor-for-more- then-two-numbers) – starblue