【MATLAB编程】求两个整数的最大公约数和最小公倍数
【问题描述】求两个整数的最大公约数和最小公倍数
【思路分析】
最大公约数
1.求两个整数的最大公约数时,先用较大数除以较小数,如果能整除,最大公约数就等于较小数;否则用较小数除以第一步的余数,如果能整除,最大公约数就等于第一步的余数;否则,用当前获得的余数除以上一步的余数,直到能整除为止。此时作为除数的那个数就是最开始那两个数的最大公约数。
最小公倍数
2.求两个整数的最小公倍数时,两个整数相乘除以最大公约数即可得到最小公倍数。
【主程序代码】
clear all;
close all;
%%
N1 = 21;
N2 = 15;
y1 = Gcd(N1,N2);
y2 = Lcm(N1,N2);
【最大公约数函数】
function y1 = Gcd(N1,N2)
%UNTITLED2 此处显示有关此函数的摘要
% 此处显示详细说明
if N2 > N1t = N1;N1 = N2;N2 = t;
end
while ((mod(N1,N2)~=0))r = mod(N1,N2);N1 = N2; N2 = r;
end y1 = N2;
end
【最小公倍数函数】
function y2 = Lcm(N1,N2)
%UNTITLED2 此处显示有关此函数的摘要
% 此处显示详细说明
y1 = Gcd(N1,N2);
y2 = (N1*N2)/y1;
end
【运行结果】

本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
