一些小练习中很matlab的做法--即能用数组+现成函数解决的运算就避免使用循环结构,也对一部分些基础题目做一个记录,顺便补全一些常用函数、矩阵。
1.在1000-3000中自小到大的整数中,找出第二个和第五个能被41整除的整数组成的行向量。(length、find、rem+数组)
function s=myfun
v=1000:3000; %生成行向量
idx =find(rem(v,41)==0); %利用rem、find函数找出满足条件的数并返回一个行向量
if length(idx)<5,
error % 找到满足条件的元素不够多, 与设计的题目不符合
end
s=v(idx([2 5])); %然后访问第二个和第五个数赋给输出参数。
2.请计算
其中q=1.09,请返回计算结果s(sum+数组)
function s=myfun
p = 2:2:46; %生成指数的行向量,步长为2
s =