如何在MATLAB中计算GCD(可变数组)



我在计算GCD时有问题。通常MATLAB中的GCD使用两个变量(例如:a=19, b=88和GCD (a,b))。但是我有一个变量数组K =[1 1 1 1 1 2 1 3 2],对于这个K,我想计算GCD。
如何计算K的最大公约数

由于gcd(gcd(a,b),c)与gcd(a,b,c)相同,因此可以遍历K并获得数组的gcd。

g = K(1)
for i=2:numel(K)
    g = gcd(g,K(i))
end
fprintf('The gcd is %in', g)

指定数组的元素为符号向量的元素。

你的问题-

K = sym([1, 1, 1, 1, 2, 1, 3, 2])
gcd(K)

最新更新