%topsis [n,m]=size(x); zh=zeros(1,m); d1=zeros(1,n); d2=zeros(1,n); c=zeros(1,n); for i=1:m for j=1:n zh(i)=zh(i)+x(j,i)^2; end end for i=1:m for j=1:n x(j,i)=x(j,i)/sqrt( zh(i)); end end xx=min(x); dd=max(x); for i=1:n for j=1:m d1(i)=d1(i)+(x(i,j)-xx(j))^2; end d1(i)=sqrt(d1(i)); end for i=1:n for j=1:m d2(i)=d2(i)+(x(i,j)-dd(j))^2; end d2(i)=sqrt(d2(i)); end for i=1:n c(i)=d1(i)/(d2(i)+d1(i)); end