编写一个MATLAB函数,查找输入一维数组A的所有极大值(三种极大值:第一个数大于后一个数,中间数大于前后的数,最后一个数大于前一个数),将查找到的所有极大值的位置和数保存到输出数组B中。允许使用多种方法实现,但至少有一种方法必须使用while循环和if语句。
3条回答 默认 最新
- ·星辰大海 2022-04-26 16:03关注
function B=func(A) if length(A)<2; B=A; else B=[]; i=2; if A(2)>A(1) B(end+1)=A(2); end while i<length(A)-1 if A(i)>A(i-1) && A(i)>A(i+1) B(end+1)=A(i) end i=i+1 end if A(length(A))>A(length(A)-1) B(end+1)=A(length(A)) end end end
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用