歐幾里得算法,也稱為輾轉相除法,用于求兩個數的最大公約數(GCD)。
在MATLAB中,可以通過以下代碼實現歐幾里得算法:
function gcd_val = euclidean_algorithm(a, b)
% 確保a大于等于b
if a < b
temp = a;
a = b;
b = temp;
end
while b ~= 0
remainder = mod(a, b);
a = b;
b = remainder;
end
gcd_val = a;
end
在上述代碼中,a
和b
是待求最大公約數的兩個數。首先,通過比較大小,確保a
大于等于b
。然后使用while
循環,直到b
等于0為止。在每次循環中,通過使用mod
函數計算余數,并將b
更新為余數,同時將a
更新為原來的b
。最終,循環結束時,a
的值就是最大公約數。
使用該函數,可以通過以下方式調用:
a = 24;
b = 36;
gcd_val = euclidean_algorithm(a, b);
disp(gcd_val);
上述代碼中,a
和b
分別為24和36,最后將計算得到的最大公約數輸出顯示。