clc;clear
y=int('(exp(x)-c*x)^2','x',0,1)
ezplot(y)
y1=diff(y)%y对c一阶导数
y2=diff(y,2)%y对c二阶导数,如果大于零,有最小值
cm=solve(y1)
ymin=subs(y,'c',cm)
结果:
y =
1/2*exp(1)^2+1/3*c^2-1/2-2*c
y1 =
2/3*c-2
y2 =
2/3
cm =
3
ymin =
1/2*exp(1)^2-7/2
【方法二】数值解法,更为简洁
function hh
[c,ymin]=fminsearch(@fun,1)
function y=fun(c)
y=eval(int('(exp(x)-c*x)^2','x',0,1));
结果:
c =
3
ymin =
0.194528049465326
温馨提示:答案为网友推荐,仅供参考