Matlab编程处理矩阵

sgo*_*les 2 matlab matlab-compiler

我正在尝试一个matlab编程问题.

题:

编写一个名为hulk的函数,它将行向量v作为输入并返回一个矩阵H,其第一列由v的元素组成,其第二列由v元素的正方形组成,其第三列由多维数据集组成元素v.例如,如果你调用函数喜欢这个,A = hulk(1:3),那么A将是[1 1 1; 2 4 8; 3 9 27].

我的代码:

function H = hulk(v)
H = [v; v.^2; v.^3];
size(H) = (n,3);
end
Run Code Online (Sandbox Code Playgroud)

当我使用测试代码时A = hulk(1:3),它会在控制台上引发错误.

Your function made an error for argument(s) 0
Run Code Online (Sandbox Code Playgroud)

我做错了吗?我错过了什么吗?

Sur*_*ati 6

删除该行size(H) = (n,3); 并添加该行H = H';

总代码应如下

function H = hulk(v)
    H = [v; v.^2; v.^3];
    H = H';
end
Run Code Online (Sandbox Code Playgroud)

您的代码给错误在matlab编辑器上size(H) = (n,3);线 在此输入图像描述

这就是你应该使用matlab编辑器的原因