请教语句的执行问题
x=100;y=100;xx=[];yy=[];
for i=1:10000
pp=rand(1);
if pp<1/4
y=y+1;
elseif 1/4<pp<1/2
x=x-1;
elseif 1/2<pp<3/4
y=y-1;
elseif pp>3/4
x=x+1;
end
xx(i)=x;
yy(i)=y;
end
figure
comet(xx,yy)
这样的一个随机游走程序,理论上以该是在点(100,100)上下和左右游走的 。 但是为什么现在只能在y轴上实现了,而在x轴方向上不能实现啊!?请大侠帮忙多谢了!
好像这个语句没有执行--“esleif 1/4<pp<1/2; x=x-1;”
[ 本帖最后由 eight 于 2008-1-21 18:45 编辑 ]
回复 楼主 的帖子
1/4<pp<1/2没有哪个程序语言可以这样智能
回复 2楼 的帖子
谢谢 但是为什么这个语句在程序里执行了啊elseif 1/2<pp<3/4
y=y-1;
回复 2楼 的帖子
但是 为什么会没报错啊!呵呵...谢谢你啊
刚改了一下,可以了!
这样就行了。
x=100;y=100;
xx=[];yy=[];
for i=1:10000
pp=rand(1);
if pp<1/4
y=y+1;
elseifpp<1/2
x=x-1;
elseifpp<3/4
y=y-1;
elseif pp>3/4
x=x+1;
end
xx(i)=x;
yy(i)=y;
end
figure
comet(xx,yy)
高手果然是高手!再次谢过!
页:
[1]