...p]=min1(x),找出向量x中的最小值及它所在的位置。(不得使
发布网友
发布时间:2024-09-27 13:25
我来回答
共2个回答
热心网友
时间:2024-10-04 06:01
%求最小值及其下标
function [min,b]=getmin(A)%min和b分别是最小值和下标数组
n=length(A);%提取输入数组长度,要是一维数组
min=A(1);j=1;%j是下标数组的下标,最小为1,肯定有最小啊
for i=1:n%这个循环求最小值
if A(i)<min
min=A(i);
end
end
for i=1:n%这个循环求下标,存入b
if A(i)==min
b(j)=i;
j=j+1;%记得增加数组长度
end
end
end
%%%%%%这样调用
>>>A=[112,323,1,6,5,5,6,5,5,1,89,12,1];
>>>[min,b]=getmin(A)
热心网友
时间:2024-10-04 05:54
MATLAB提供的求数据序列的最大值和最小值的函数分别为max和min,两个函数的调用格式和操作过程类似。
1.求向量的最大值和最小值
求一个向量X的最大值的函数有两种调用格式,分别是:
(1) y=max(X):返回向量X的最大值存入y,如果X中包含复数元素,则按模取最大值。
(2) [y,I]=max(X):返回向量X的最大值存入y,最大值的序号存入I,如果X中包含复数元素,则按模取最大值。
求向量X的最小值的函数是min(X),用法和max(X)完全相同。
例 求向量x的最大值。
命令如下:
x=[-43,72,9,16,23,47];
y=max(x) %求向量x中的最大值
[y,l]=max(x) %求向量x中的最大值及其该元素的位置
2.求矩阵的最大值和最小值
求矩阵A的最大值的函数有3种调用格式,分别是:
(1) max(A):返回一个行向量,向量的第i个元素是矩阵A的第i列上的最大值。
(2) [Y,U]=max(A):返回行向量Y和U,Y向量记录A的每列的最大值,U向量记录每列最大值的行号。
(3) max(A,[],dim):dim取1或2。dim取1时,该函数和max(A)完全相同;dim取2时,该函数返回一个列向量,其第i个元素是A矩阵的第i行上的最大值。
求最小值的函数是min,其用法和max完全相同。