题目
讲解
简洁对各个式子的内部含义用浅显易懂的话语总结出来了,耐心体会
Matlab
f=@(a) @(x)exp(x)+x^a+x^(sqrt(x))-100;%因为下面的fzero的第一个数需要一个fun,所以这里有两个句柄@,第一个a是输入的,第二个x是需要被解出的
A=0:0.1:2;%创建一个以0.1为间隔的0到2的数组
x=@(a)fzero(f(a),3);%这步想创建一个x(a),可以直接解出在a点的对应的值(到这里可以看出,想解一个二元函数,需要先写一个已知传入的f函数,其中
% 内部包含两个句柄@,第一个是可以传入的a,第二个是待解的。而此刻再写第二个匿名函数,直接用fzero()解出来f的fun函数即可,
% 至于第二个位置上的3,只是预测值,使用即使是其他的也没事,无关紧要),a是可以传入的,然后里面套一个
X=@(B) arrayfun(@(b) x(b),B);%这里想创建一个X(A),可以对集合的每个元素使用x的fun函数。因为是对集合,使用句柄@后面用的是一个B(表示集合),
%想要对集合每个元素用一个fun函数,需要用到arrayfun函数其中内部第一个需要再定义一个句柄@b(其实这就是一个个接收集合B的每个元素),然后用这个b
%赋值给x(b),供x()函数使用
X(A)