Find and draw max. and min values of function.
4 ビュー (過去 30 日間)
古いコメントを表示
Hi,
I am trying to find max. and min values for below function and draw it but I got wrong results. I do not know why?
for i=1:30
x(i)=-16+i;
y(i) = [(x.^3/7)+(x/15)+(1/35)]/[(x.^2/44)+((x)/107)+(1/25)];
plot(x,y)
end
indexmin = find(min(y) == y);
xmin = x(indexmin);
ymin = y(indexmin);
indexmax = find(max(y) == y);
xmax = x(indexmax);
ymax = y(indexmax);
strmin = ['Minimum = ',num2str(ymin)];
text(xmin,ymin,strmin,'HorizontalAlignment','left');
strmax = ['Maximum = ',num2str(ymax)];
text(xmax,ymax,strmax,'HorizontalAlignment','right');
0 件のコメント
回答 (1 件)
Walter Roberson
2015 年 12 月 10 日
y(i) = ((x(i).^3/7)+(x(i)/15)+(1/35)) / ((x(i).^2/44)+((x(i))/107)+(1/25));
Using [] would have worked but it is not a good idea to use [] to indicate precedence, as [] is the list building operator.
Your main problem was that you were using all of x in every calculation of y.
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!