关于matlab数组下标小问题

问题描述:

关于matlab数组下标小问题
程序如下:
wt=1:1:180;
Y=wt/180;
R=500*cos(Y);
for i=1:1:180
x(i)=R(i)*cos(i*pi/180.0);
y(i)=R(i)*sin(i*pi/180.0);
end
plot([-250 250],[0 0],'k');
hold on;grid on;
plot([0,0],[-200 200],'k');
hold on;grid on;
plot(x,y,'r')
axis equal
hold on
输出的图形在第一象限中0~1之间是空的,我想让0~1之间也显示出曲线
如果在C++中,我可以直接定义为
for i=0:1:180
但matlab好像数组下标必须从1开始,只能定义为
for i=1:1:180
怎么办?
请给出详细程序.谢谢!
1个回答 分类:综合 2014-10-21

问题解答:

我来补答
这样改下就好了:
wt=0:1:180;
Y=wt/180;
R=500*cos(Y);
for i=0:1:180
x(i+1)=R(i+1)*cos(i*pi/180.0);
y(i+1)=R(i+1)*sin(i*pi/180.0);
end
不要硬把那个循环变量i看做是下标,它的意义实际上是角度,我们可以灵活的根据角度转换为下标.
 
 
展开全文阅读
剩余:2000