登录论坛

查看完整版本 : MATLAB中出现??? Error using ==> mrdivide是怎么回事


TT
2008-09-24, 21:56
x=0:10;
F=x./(x+2);
G=x./10;
H=1/[1+0.2.*(x+2).^2];
plot(x,F,'b',x,G,'g',x,H,'k')
??? Error using ==> mrdivide
Matrix dimensions must agree.
不知道哪错了?
还有,我经常出现在运行m文件时没图产生,相同的程序放到命令窗口就可以产生图形了,不知道为什么,请高人指点。

meteora1005
2008-09-24, 22:13
其中一句改为:H=1./[1+0.2.*(x+2).^2];
就是分子的1后加个点,这种数组群运算(即点运算)是初学matlab常犯的错误。
你说的第二个问题贴个具体的程序上来才能给你解决啊。

TT
2008-09-24, 22:26
很谢谢你对第一个问题的回答,第二个问题也是上面的程序,运行一次M文件,在命令窗口就出现一次:
ans =

1
但贴到命令窗口运行就可以,不知道为什么啊?

meteora1005
2008-09-24, 22:41
不可能呀,你照我的把那句改了就不会出现问题了啊,反正我的就不会出现错误,估计你刚学不久,再告你一些小技巧,在编程序文件第一句最好写clear;在窗口要用新命令前也最好先打一个clear清掉以前的变量。编辑器里运行和把所有语句贴到窗口运行是一个道理,不会有什么不同。

TT
2008-09-25, 12:21
真的很奇怪,我现在输入了一个最简单的程序编成m文件,程序是:
clear
x=[0, 0.48,0.84,1,0.91,0.6,0.14]
plot(x)
得到的结果是:
ans =

2
,但拷到命令窗口运行就是一个图。真快崩溃了!

meteora1005
2008-09-25, 19:05
那我没招儿了,我的绝对不会出现这种问题,实在不行你换个新版本吧,我的是7.4的,到处有卖的。

TT
2008-09-25, 20:01
确实是换版本,哈哈,谢谢!

walehenry
2008-09-26, 18:52
楼主搞笑了

未注册
2012-10-08, 22:27
运行不出来的原因是因为你M文件的名字起的不合法,应该是以数字开头了吧,M文件名称必须以英文字母开头,你可以再试试。