例6-14.m

来自「上传最新Matlab7基础与提高,与各位爱好者分享」· M 代码 · 共 45 行

M
45
字号
clear,clf, m=100;
n=5;
y0=2;
ballnum=zeros(1,n+1);
p=0.5;q=1-p;
for i=n+1:-1:1
    x(i,1)=0.5*(n-i+1);
    y(i,1)=(n-i+1)+y0;
    for j=2:i
        x(i,j)=x(i,1)+(j-1);
        y(i,j)=y(i,1);
    end
end
mm=moviein(m);
for i=1:m
     s=rand(1,n)
     xi=x(1,1);
     yi=y(1,1);
     k=1;
     l=1;
     for j=1:n
         plot(x(1:n,:),y(1:n,:),'o',x(n+1,:),y(n+1,:),'.-');
         
          axis([-2 n+2 0 y0+n+1]),hold on
          k=k+1;
          if s(j)>p
              l=l+0;
          else
              l=l+1;
          end
          xt=x(k,l);yt=y(k,l);
          h=plot([xi,xt],[yi,yt]);axis([-2 n+2 0 y0+n+1])
          xi=xt;
          yi=yt;
           
     end
     ballnum(l)=ballnum(l)+1;
     ballnum1=3*ballnum./m;
     bar([0:n],ballnum1),
     axis([-2 n+2 0 y0+n+1]);
     mm(i)=getframe;
     hold off
end
movie(mm,1);

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?