Fórmula:
d(P,Q) = SQRT[ (Q1-P1)^2 + (Q2-P2)^2 + (Q3-P3)^2 + ... + (Qn-Pn)^2 ]
Código java (Distancia2p.java)
package distancia2p;
import java.util.Arrays;
public class Distancia2p {
public static void main(String[] args) {
int n = 6; //numero de dimensiones
int[] A = new int[n];
int[] B = new int[n];
//posición cartesiana n coordenadas
int maximo = 100;
int minimo = 1;
for (int i = 0; i < n; i++) {
//numero aleatoria entre 1 (minimo) y 100 (maximo)
A[i] = (int) Math.floor(Math.random() * (maximo - minimo + 1)) + minimo;
B[i] = (int) Math.floor(Math.random() * (maximo - minimo + 1)) + minimo;
}
double aux = 0;
double distancia;
for (int i = 0; i < n; i++) {
aux = aux + Math.pow((A[i] - B[i]), 2);
}
distancia = Math.sqrt(aux);
//mostrar resultados
System.out.println("*Distancia entre 2 puntos en un espacio de " + n + "-dimensiones:");
System.out.println("coordenadas punto A: " + Arrays.toString(A));
System.out.println("coordenadas punto B: " + Arrays.toString(B));
System.out.println("Distancia entre punto A y B: " + distancia);
}
}
Resultado:
run:
*Distancia entre 2 puntos en un espacio de 6-dimensiones:
coordenadas punto A: [29, 89, 69, 33, 18, 22]
coordenadas punto B: [76, 93, 41, 53, 43, 91]
Distancia entre punto A y B: 93.78166132032425
BUILD SUCCESSFUL (total time: 0 seconds)