matlab函数内部while循环

时间:2014-05-09 18:55:37

标签: matlab

为了简化问题,我创建了这个小程序,我在while循环中使用我的函数时遇到了一些麻烦

这是脚本;

x = 1;
y = 1;
while x<10
    y = func(x,y);
    x = x + 1;

这是函数,func;

function [] = func(x,y)

y- exp(-x)

end

我收到错误

Error using func
Too many output arguments.

我做错了什么

1 个答案:

答案 0 :(得分:2)

声明函数时:

function [] = func(x,y)

您已指定没有返回值,但是当您调用它时,您需要返回值:

y = func(x,y);

要解决此问题,您必须更改功能声明,例如:

function y_out = func(x,y)

此外,在您的函数声明中,您有y- exp(-x),这不会更改y的值;你打算y=exp(-x)吗?