在MATLAB上将常量函数应用于返回数组的数组

时间:2018-11-02 19:42:54

标签: arrays matlab function

我将一个函数(是 constant )应用于数组,我认为它将返回一个数组,其中所有值均等于1,但仅返回1。

q=@(x) 1
q([1:n].*10)

ans = 1

我认为它将返回:ans = [1,1,1,1,1,...]

2 个答案:

答案 0 :(得分:1)

q需要一种了解输出大小的方法。

q=@(x) zeros(size(x))+1;
q(1:10)

答案 1 :(得分:1)

是的,您的函数是一个常量,但您的输入中没有'x',因此它返回任何输入的常量值。试试:

q=@(x) x.*0+1

在这种形式下,您的函数将以任何形式(向量,矩阵或常数)镜像输入,这应该给出所需的结果:)