求大神帮忙修改matlab程序

问题描述:

求大神帮忙修改matlab程序
for i=1:72
x0=x(i);
y0=y(i);
d=sqrt((x0-a(i))^2-(y0-b(i))^2)
if d(i)>=30
c(i,i)=x0;
c(i+1,i+1)=y0;
end
end
x,y分别存储原始点的横坐标和纵坐标,a,b矩阵内分别存储要判断的点的横坐标和纵坐标,要求如果待判断的点到任何一个原始点的距离都大于30,则输出这个点的横纵坐标.这个应该怎么用matlab实现呢?
x,y矩阵中分别存储横坐标和纵坐标,
1个回答 分类:综合 2014-11-15

问题解答:

我来补答
savex=[];
for i=1:length(a)
ai=a(i);
bi=b(i);
d=sqrt((x-ai).^2+(y-bi).^2);
if all(d>30) %所有的d都大于30
ai
savex=[savex,ai];
end
end
再问: O(∩_∩)O谢谢~不过输出的结果只有一个,,,不太对,,,而且在savex里的应该为点的横坐标和纵坐标。。。
再答: 我看错题了。我只保存横坐标。 ai savex=[savex,ai]; 这两句改为: [ai,bi] savex=[savex;ai,bi];
 
 
展开全文阅读
剩余:2000
上一页:关于ATP```````