主题:一个绘图的程序
			
 diaoxue
				 [专家分:600]  发布于 2007-06-11 12:14:00							
			
       for n=1:101; x(n)=(n-1)/100;y(n)=x(n);end
[x(n),y(n)]=meshgrid(x(n),y(n));      %以上语句产生平面网格
for n=1:101;y(n)=(n-1)/100;
for i=1:101;x(i)=(i-1)/100;
        if x(i)<sqrt(y(n))/2
            z(i,n)=0
        else
         if x(i)<sqrt(y(n))
             z(i,n)=sqrt(y(n)-x(i)^2);
         else
             z(i,n)=0
         end
     end
 end
End                   %以上语句通过双循环产生以上x(i),y(n)的同时,判断
mesh(z)               % 第i个x值与第n个y值的交点位于何区域.
hold on
view([150,200,400]);
程序一直运行啊,全是0.不能得到图形啊
还有就是怎么让一个运行中的程序停止了
难道只有关闭matlab吗
						
					 
		
			
回复列表 (共3个回复)
		
								
				沙发
				
					
fox000002 [专家分:860]  发布于 2007-06-11 13:40:00				
				停止运行使用Ctrl+C
程序结构太乱,都没好好使用换行和缩进。
							 
						
				板凳
				
					
fox000002 [专家分:860]  发布于 2007-06-11 14:14:00				
				输出的语句只有:z(i,n)=0
当然全是0
------------------------
[x(n),y(n)]=meshgrid(x(n),y(n));??这句没作用吧
------------------------
for n=1:101;
     x(n)=(n-1)/100;
     y(n)=x(n);
end
for n=1:101
    for i=1:101
        if x(i)<sqrt(y(n))/2
            z(i,n)=0;
        else
            if x(i)<sqrt(y(n))
                z(i,n)=sqrt(y(n)-x(i)^2);
            else
                z(i,n)=0;
            end
        end
    end
end
mesh(z)
hold on
view([150,200,400]);
							 
						
				3 楼
				
					
zhouxuewu11 [专家分:430]  发布于 2007-06-11 20:19:00				
				我运行了你的程序,有结果嘛!你将view([150,200,400]);暂时不要。
是你查看图的区域时没有看对地方!你的邮箱中我把图像和M文件发过了,请收!
							 
									
			
我来回复