登录论坛

查看完整版本 : 我如何在Matlab中将值传递给子函数?输出错误?


poster
2019-12-10, 20:30
下面是我在Matlab中的代码,行和=(h / 2)*(f(a)+ f(b))+ h; Matlab说,当我尝试调用f(x)函数时,我必须有很多输出。我的f(x)函数有问题吗

function Trapezoid_Uniform(a,b,n) h = (b - a)/n; sum = (h/2) * (f(a) + f(b)) + h; for i = 1:n-1 x = a + i*h; sum = sum + f(x); end sum = sum*h; disp(sum); end function f(z) f = exp(z); end

回答:

您需要在函数中指定返回的变量。例如,在C ++中有一个明确的return语句-MATLAB如何知道需要返回什么?您可以在签名中指定它,即本例中为f_of_z 。

function f_of_z = f(z) f_of_z = exp(z); end

更多&回答... (https://stackoverflow.com/questions/2429888)