Distancia entre dos puntos en C - Teorema de Pitágoras

C – Distancia entre dos puntos

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.

La fórmula de la distancia en C

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.

Calculando distancia entre dos puntos con C

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:

Distancia entre dos puntos en C - Teorema de Pitágoras
Distancia entre dos puntos en C – Teorema de Pitágoras

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.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *