matlab一组数据里面最小值,有没有函数可以直接找出来?

比如i=1:100;a=f(i);b=g(i);c=p(i)当a-b的差值最小时,disp(c),请问怎么做?... 比如i=1:100; a=f(i);b=g(i);c=p(i)
当a-b的差值最小时,disp(c),请问怎么做?
展开
 我来答
游戏放松小助手
高粉答主

2020-05-11 · 我是游戏小达人,乐于助人
游戏放松小助手
采纳数:32 获赞数:76887

向TA提问 私信TA
展开全部

1、首先在电脑中打开matlab,利用内联函数建立函数表达式,如下图所示。

2、然后求解区间内最小值,返回最小值横坐标,如下图所示。

3、接着返回横坐标和最小值,如下图缩小。

4、然后建立函数表达式,求解,返回横坐标,如下图所示。

5、最后返回横坐标和最小值,如下图所示,就完成了。

sz_lr
推荐于2017-10-09
知道答主
回答量:25
采纳率:0%
帮助的人:26.7万
展开全部
如果f(i),g(i),是数组的话,就可以直接运算。如果是一个函数的话,可以先把f,g算出来然后运算。假设f,g是f(i),g(i),运算后的数组。
t = f-g;%%计算a-b的差值
indexi= find(t==min(t));%%找出差值最小时i值的位置
i = i(indexi);%%差值最小时,i的取值。如果i=1:100,i就等于indexi了
c = p(i);%%计算c值,p可以是函数,也可以是一组数组
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zzt910625
推荐于2017-09-12 · TA获得超过1063个赞
知道小有建树答主
回答量:425
采纳率:100%
帮助的人:185万
展开全部
x=[0 18.4523 30.5655 36.9628 75.9276 81.6088 96.0469 78.6924];
[min_of_x i]=min(x)

这两个语句就可以了

输出参数中,min_of_x记录最小值
i记录最小值的下标。

p.s.看到一个matlab的函数,先help一下,看看它的功能与要求……
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Kanone_Hilbert
2012-10-21 · 超过24用户采纳过TA的回答
知道答主
回答量:74
采纳率:0%
帮助的人:70.1万
展开全部
[D,I] = min(a-b);

disp(c(I));

第一个返回值是最小值本身,第二个返回的就是那个index。。。。。没必要find。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xazhuyuchen
2012-10-14 · TA获得超过403个赞
知道小有建树答主
回答量:278
采纳率:100%
帮助的人:106万
展开全部
d=a-b;
min_index=find(d==min(d));
min_index就是最小值对应的下标,min(d)是最小值。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式