关于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(
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/14 22:04:41
关于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(
关于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
怎么办?
请给出详细程序.谢谢!
关于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(
这样改下就好了:
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看做是下标,它的意义实际上是角度,我们可以灵活的根据角度转换为下标.