一、辗转相除法
%求两个数的最大公约数。使用辗转相除法:两个数a,b的最大公约数等于 a/b的余数c 与b之间的最大公约数 (当c为0时,最大公约数为b)
%c语言的经典递归实现:(很精妙)
% int gys(int a,int b){
% return b ? gys(b,a%b):a ;
% }
% mod():求两个数的余数
a=input('enter an integer of a:');
b=input('enter an integer of b:');
c=mod(a,b); %c等于a除以b的余数
%这里不用考虑a与b的大小关系,在辗转相除算法中,最终运行结果一样
while c~=0 % 不加冒号;。这里的 ~= 符号表示不等于
a=b;
b=c;
c=mod(a,b);
end
disp(b) %输出最大公约数
二、新建m文件与function文件
点击新建可以建立多种不同类型的文件。
点击新建函数文件,在编辑器中得到固定的函数格式模板:
在其中建立求和函数:
1、有返回值的函数:
function myresult = sum_num(n)
% 求1加到n
s=0;
for i=1:n
s=s+i;
end
myresult = s; %return
end
2、无返回值的函数:
function sum_num(n)
% 求1加到n
s=0;
for i=1:n
s=s+i;
end
disp(s);
end
通过在command Window中输入函数名可以直接调用,也可以在m文件中调用