Hoy veremos cómo obtener la distancia entre dos puntos del plano cartesiano usando el lenguaje de programación C y la fórmula de la distancia, que no es más que aplicar el teorema de Pitágoras.
Básicamente vamos a transcribir la fórmula al lenguaje y encerrarla en una función para su reutilización a través del resto de código.
Aquí te mostraré el programa en C para obtener la distancia entre dos puntos, pero no te explicaré la fórmula. Si quieres estudiar la fórmula te recomiendo este enlace.
Nota: si quieres calcular la distancia entre dos puntos geográficos del planeta mira este post.
Recuerda que vamos a usar sqrt y pow para obtener la raíz cuadrada y elevar al cuadrado, respectivamente. Lo demás son simples restas, sumas y la aplicación de la fórmula. Dicho eso, veamos el código:
double calcularDistancia(int x1, int y1, int x2, int y2)
{
/*
Aplicar la fórmula que dice:
distancia = raiz_cuadrada_de(elevar_al_cuadrado(x1-x2) + elevar_al_cuadrado(y1-y2))
Nota: no importa el orden de los puntos ni si la distancia al restar es negativa
*/ return sqrt(pow(x1 - x2, 2) + pow(y1 - y2, 2));
}
Como puedes ver, esta función recibe los dos puntos y devuelve la distancia entre ellos.
Ya vimos la función, ahora veamos la aplicación de la función con un ejemplo. El código completo queda así:
// https://parzibyte.me/blog
#include <stdio.h>
#include <math.h>
double calcularDistancia(int x1, int y1, int x2, int y2)
{
/*
Aplicar la fórmula que dice:
distancia = raiz_cuadrada_de(elevar_al_cuadrado(x1-x2) + elevar_al_cuadrado(y1-y2))
Nota: no importa el orden de los puntos ni si la distancia al restar es negativa
*/ return sqrt(pow(x1 - x2, 2) + pow(y1 - y2, 2));
}
int main(int argc, char const *argv[])
{
int x1 = 3, y1 = -4;
int x2 = 6, y2 = 0;
double distancia = calcularDistancia(x1, y1, x2, y2);
printf("La distancia entre %d,%d y %d,%d es %lf", x1, y1, x2, y2, distancia);
return 0;
}
Dentro del método main
vemos un ejemplo de uso de esta función. Al ejecutarlo, los resultados son correctos:
Ya a partir de esto podríamos solicitar los datos de los puntos al usuario, leerlos de un archivo, etcétera.
También puedes leer más sobre el lenguaje C.
El día de hoy te mostraré cómo crear un servidor HTTP (servidor web) en Android…
En este post te voy a enseñar a designar una carpeta para imprimir todos los…
En este artículo te voy a enseñar la guía para imprimir en una impresora térmica…
Hoy te voy a mostrar un ejemplo de programación para agregar un módulo de tasa…
Los usuarios del plugin para impresoras térmicas pueden contratar licencias, y en ocasiones me han…
Hoy voy a enseñarte cómo imprimir el € en una impresora térmica. Vamos a ver…
Esta web usa cookies.