我是matlab的新手。e
如果值为,我想返回 0 NaN
。以下是我的代码:
if(e!='NaN')
fprintf(1,'The final coefficiant is: %f \n',e);
else
return 0;
end
它向我展示
意外的 MATLAB 运算符。
谁能告诉我为什么?我应该怎么写?
我是matlab的新手。e
如果值为,我想返回 0 NaN
。以下是我的代码:
if(e!='NaN')
fprintf(1,'The final coefficiant is: %f \n',e);
else
return 0;
end
它向我展示
意外的 MATLAB 运算符。
谁能告诉我为什么?我应该怎么写?
!= 也不是有效的 MATLAB 运算符。那是你的错误。采用~=
没有什么是永远,永远,永远== NaN。
甚至不是 NaN。采用isnan
function out = my_fun(e)
if ~isnan(e)
fprintf('The final coefficiant is: %f \n',e);
out = 1; % or whatever
else
out = 0;
end
Matlab 函数的返回值与常规函数不同。看这个例子:
function success = myfunc()
e = rand(); % Compute e in some way
if ~isnan(e)
fprintf(1,'The final coefficiant is: %f \n',e);
success = true;
else
success = false;
end
关键字将return
退出函数,但它不用于传递返回值。您可以使用它isnan
来检查 NaN。