Info
此问题已关闭。 请重新打开它进行编辑或回答。
how can i solve this proble need help pleazzzzzzz??????
1 次查看(过去 30 天)
显示 更早的评论
heloo,,,,,,,,,,,,,,, I want to create a nw matrix (bet) from the old matrix (net) but i have a conditions to do that ; so i calculat a distance between all the point of matrix net (d) and a degree of each point(nombre of point whos distance are inferieur to r(r is a range) ; my condition to creat the matrix bet is if the degree is equal to 1 or i take the maximum value of degree max(degree) and put his corespondant point in matrix *bet*and to eliminat all the point that have a distance <r whit this point i change all his distance to 100
clc;
clear all;
n=10;
x=100;
y=100;
r=25;
net = [1:n;rand([1,n])*x;rand([1,n])*y];
for i = 1:n
for j = 1:n
X1 = net(2,i);
Y1 = net(3,i);
X2 = net(2,j);
Y2 = net(3,j);
xSide = abs(X2-X1);
ySide = abs(Y2-Y1);
d(i,j) = sqrt(xSide^2+ySide^2);% distance euclidienne ENTRE NOEUD
end
end
degree = zeros(n,1);
for i = 1:n
%for j = i+1:n
for j = 1:n
if (d(i,j)<=r )
degree(i)= degree(i)+1;
end
end
end
bet=zeros(2,n)
for i=1:n
for j=1:n
while d~=100
if degree(i)== 1
bet(2,i)=net(2,i);
bet(3,i)=net(3,i);
else
if max(degree(i))>1 && d(i,j)<r
bet(2,i)=net(2,i);
bet(3,i)=net(3,i);
end
end
d(i,:)=100;
d(:,j)=100;
end
end
end
1 个评论
回答(0 个)
此问题已关闭。
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!