Octave 八度表达式中的大小写区分

Octave 八度表达式中的大小写区分,octave,Octave,我想使用一个通过以下伪代码运行的函数: f = @(x,y) if x*y > 0 then 1 else 0; 如何在一行八度音阶中实现这一点?也许你可以试试 f = 1*(x*y>0) 或 这回答了你的问题吗?请看链接问题中投票最多的答案(位于已接受答案之后)。f=@(x,y)(x*y>0)就足够了。@matzeri我认为这将返回逻辑1或0,而不是数字1或0。f(2,4)/2 ans=0没有区别。50000@matzeri没有区别,因为您正在使用/2使其成为数字。如果您尝试c

我想使用一个通过以下伪代码运行的函数:

f = @(x,y) if x*y > 0 then 1 else 0;
如何在一行八度音阶中实现这一点?

也许你可以试试

f = 1*(x*y>0)


这回答了你的问题吗?请看链接问题中投票最多的答案(位于已接受答案之后)。
f=@(x,y)(x*y>0)
就足够了。@matzeri我认为这将返回逻辑1或0,而不是数字1或0。f(2,4)/2 ans=0没有区别。50000@matzeri没有区别,因为您正在使用
/2
使其成为数字。如果您尝试
class(f)
,您将看到差异i在函数内部进行转换或在以下计算中使用时,我看不到差异,除非您可能不需要进行计算,而只需要在以后进行逻辑评估。
f = @(x,y) 1*(x*y>0)