matlab中写入代码: x=0:0.1:1; y=(1+2*x)^(1/2) ; plot(x,y)

运行后显示:
??? Error using ==> mpower
Matrix must be square.

Error in ==> Untitled at 2
y=(1+2*x)^(1/2);
这怎么回事啊?

x=0:0.1:1
这里x相当于一个矩阵:[0,0.1 , 0.2……1]
表达式y=(1+2*x)^(1/2)表示数值运算。
这里应改为y=(1+2.*x).^(1/2)
plot(x,y)就出来了。

矩阵和数值运算符号前要加“.”,比如“.*”“./”
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-04-25

ezplot('(1+2*x)^(1/2)',[0:0.1:1])

第2个回答  2011-04-25
clc
clear all;
x=0:0.1:1;
leng=length(x);
y=zeros(leng,1);
for i=1:1:leng
y(i)=(1+2*x(i))^0.5;
end
plot(x,y);
你的x是个矢量,不能直接进行运算
你试试我改的程序
祝你学习愉快!
相似回答