Sunteți pe pagina 1din 8

Universidad Nacional Autónoma de Nicaragua.

UNAN-León.

Departamento de Matemática Pura y Aplicada.


Área:
Lógica de Programación.
Tema:
Algoritmo distancia entre dos puntos
Docente:
Lic. Julio Rojas.
Elaborado por:
Br. Nelson Francisco Rojas Reyes.

León, 14 de noviembre 2018.


Calcule la distancia entre dos puntos cualesquiera dados.
Solución.

Se pide calcular la distancia entre dos puntos cualquiera.


En matemáticas conociendo dos puntos del plano cartesiano se puede calcular la distancia
entre ellos, Gracias a la siguiente formula podemos calcular cualquier distancia entre dos
puntos arbitrarios.
Formula de la distancia.
La distancia 𝒅(𝑷𝟏 , 𝑷𝟐 ) entre dos puntos cualquiera 𝑷𝟏 (𝒙𝟏 , 𝒚𝟏 ) y 𝑷𝟐 (𝒙𝟐 , 𝒚𝟐 ) de un plano
coordenado es 𝒅(𝑷𝟏 , 𝑷𝟐 ) = √(𝒙𝟏 − 𝒙𝟐 )𝟐 − (𝒚𝟏 − 𝒚𝟐 )𝟐

Donde (𝒙𝟏 , 𝒚𝟏 ) son las componentes del punto inicial y (𝒙𝟐 , 𝒚𝟐 ) son la componente del
punto final.
Luego si hacemos 𝒅𝒙 = (𝒙𝟏 − 𝒙𝟐 ) y 𝒅𝒚 = (𝒚𝟏 − 𝒚𝟐 ) donde 𝒅𝒙 y 𝒅𝒚 es la distancia en la
abscisa 𝑥 y el eje 𝑦, convirtiendo la fórmula de la distancia es 𝒅(𝑷𝟏 , 𝑷𝟐 ) =
√(𝒙𝟏 − 𝒙𝟐 )𝟐 + (𝒚𝟏 − 𝒚𝟐 )𝟐 en es 𝒅(𝑷𝟏 , 𝑷𝟐 ) = √(𝒅𝒙)𝟐 + (𝒅𝒚)𝟐 , reescribiendo la
formula la podemos escribir de la forma
𝑑 (𝑃1 , 𝑃2 )2 = (𝑑𝑥)2 + (𝑑𝑦)2 , esta es la conocida formula del teorema de Pitágoras.

Observemos el funcionamiento de la fórmula de la distancia


Ejemplos:
Calcular la distancia entre los siguientes puntos
𝑷𝟏 (−𝟏, −𝟏) y 𝑷𝟐 (𝟐, 𝟑)

𝟐
𝒅(𝑷𝟏 , 𝑷𝟐 ) = √(−𝟏 − (𝟐)) + (−𝟏 − 𝟑)𝟐
𝒅(𝑷𝟏 , 𝑷𝟐 ) = √(−𝟑)𝟐 + (−𝟒)𝟐
𝒅(𝑷𝟏 , 𝑷𝟐 ) = 𝟓
𝑷𝟏 (𝟏, 𝟑) y 𝑷𝟐 (𝟒, 𝟔)

𝒅(𝑷𝟏 , 𝑷𝟐 ) = √(𝟏 − 𝟒)𝟐 + (𝟑 − 𝟔)𝟐

𝒅(𝑷𝟏 , 𝑷𝟐 ) = √(−𝟑)𝟐 + (−𝟑)𝟐

𝒅(𝑷𝟏 , 𝑷𝟐 ) = √𝟏𝟖

𝑷𝟏 (𝟏, 𝟑) y 𝑷𝟐 (𝟖, 𝟔)

𝒅(𝑷𝟏 , 𝑷𝟐 ) = √(𝟏 − 𝟖)𝟐 + (𝟑 − 𝟔)𝟐

𝒅(𝑷𝟏 , 𝑷𝟐 ) = √(−𝟕)𝟐 + (−𝟑)𝟐

𝐝(𝐏𝟏 , 𝐏𝟐 ) = √𝟓𝟖
𝑷𝟏 (𝟏, 𝟑) y 𝑷𝟐 (𝟏𝟏, 𝟓)

𝒅(𝑷𝟏 , 𝑷𝟐 ) = √(𝟏 − 𝟏𝟏)𝟐 + (𝟑 − 𝟓)𝟐

𝒅(𝑷𝟏 , 𝑷𝟐 ) = √(𝟏𝟎)𝟐 + (𝟐)𝟐

𝒅(𝑷𝟏 , 𝑷𝟐 ) = √𝟏𝟎𝟒
𝑷𝟏 (𝟒, 𝟔) y 𝑷𝟐 (𝟏𝟏, 𝟓)

𝒅(𝑷𝟏 , 𝑷𝟐 ) = √(𝟒 − 𝟏𝟏)𝟐 + (𝟔 − 𝟓)𝟐

𝒅(𝑷𝟏 , 𝑷𝟐 ) = √(−𝟕)𝟐 + (𝟏)𝟐

𝒅(𝑷𝟏 , 𝑷𝟐 ) = √𝟓𝟎
Con lo anterior procedemos a desarrollar el seudocódigo.

Variable a utilizar
x1, x2, y1, y2, xi, xj, xk, yi, yj, yk Variables de entrada que almacenaran los datos
ingresados por el usuario.
n Variable que almacenara el numero o total de punto que
va ingresar el usuario.
i,j,k Variable que utilizara para contar los datos ingresado
dx,dy Esta variable almacenara las distancia de los puntos del
eje Y y de la abscisa x
d Representa la distancia de los puntos en el plano
coordenado

Continuaremos convirtiendo la fórmula de modo matemático a su representación algorítmica.

// x la podemos llamar como la distancia del eje x de la forma dx<-(xi-xj) y dy como la distancia de

// el eje y de la forma dy<-(yi-yj)

// la distancia sera d<-(dx^2+dy^2)^2

A continuación, el seudocódigo.

// El siguiente código está diseñado para calcular la distancia entre dos puntos arbitrarios dados
// En matemática dado dos punto (x1,y1) y (x2,y2) cualesquiera podemos encontrarle la
distancia con la formula
// d=((x1-x2)^2-(y1-y2)^2)^(1/2)
//Variables a utilizar:
// n,x1,x2,y1,y2,xi,xj,xk,yi,yj,yk Variables de entrada almacenaran los valores ingresados por
el usuario
// dx la podemos llamar como la distancia del eje x de la forma dx=(xi-xj) y dy como la distancia
de
// el eje y de la forma dy=(yi-yj)
// d => distancia Variables de salida. Se almacenará el resultado de calcular la
distancia entre
// dos puntos
// la distancia será d=(dx^2+dy^2)^2
// Autor: Nelson Rojas Reyes
// Fecha: 14 de Noviembre de 2018
// Archivo: Distancia entre dos puntos.

Proceso distancia_entre
Definir n,i,j,k Como Entero;
Definir d Como Real;
Definir xi,yi,xj,yj,xk,yk,x1,x2,y1,y2 Como Real;
Definir dx,dy Como Real;;
Escribir "A cuantos puntos le desea calcular la distancia ";
Leer n;

si n=2 Entonces
Escribir"Coodenadas del Punto1";
Escribir "Ingrese la absisa x del punto1";
Leer x1;
Escribir "Ingrese la coordenada y del punto1";
Leer y1;
Escribir"Coodenadas del Punto2";
Escribir "Ingrese la absisa x del punto2";
Leer x2;
Escribir "Ingrese la coordenada y del punto2";
Leer y2;
dx<-(x1-x2);
dy<-(y1-y2);
d<-rc(dx^2+dy^2);
Escribir "La distancia del punto1=(" ,x1,",",y1,") al punto2=(",x2,",",y2,") es igual
a ",d;
SiNo

Para i<-1 Hasta n Con Paso 1 hacer

Escribir"Coodenadas del Punto",i;


Escribir "Ingrese la absisa x del punto",i;
Leer xi;
Escribir "Ingrese la coordenada y del punto",i;
Leer yi;
si i=1 entonces
xk<-xi;
yk<-yi;
k<-i;
j<-i+1;
Escribir " Coordenada del Punto",j;
Escribir "Ingrese la absisa x del punto",j;
Leer xj;
Escribir "Ingrese la coordenda y del punto",j;
Leer yj;
dx<-(xj-xi);
dy<-(yj-yi);
d<-rc(dx^2+dy^2);
Escribir "La distancia del punto",i,"=(" ,xi,",",yi,") al
punto",j,"=(",xj,",",yj,") es igual a ",d;
i<-i+1;
SiNo
dx<-(xi-xj);
dy<-(yi-yj);
d<-rc(dx^2+dy^2);
Escribir "La distancia del punto",j,"=(" ,xj,",",yj,") al
punto",i,"=(",xi,",",yi,") es igual a ",d;
j<-i;
xj<-xi;
yj<-yi;
FinSi
Si i=n Entonces
dx<-(xk-xj);
dy<-(yk-yj);
d<-rc(dx^2+dy^2);
Escribir "La distancia del punto",k,"=(" ,xk,",",yk,") al
punto",j,"=(",xj,",",yj,") es igual a ",d;
FinSi
FinPara
FinSi

FinProceso

Ejecución:
Diagrama de flujo.

S-ar putea să vă placă și