En este post de programación en C te enseñaré a calcular el valor absoluto de un número.

El valor absoluto es la distancia que existe entre dos puntos de una recta, y esta distancia siempre será positiva.

Explicado con otras palabras y sin ser matemático, el valor absoluto es convertir un número a su representación positiva en caso de que éste sea negativo.

Anteriormente te enseñé cómo convertir un número negativo a positivo en C en donde vimos funciones nativas, pero en este post te enseñaré cómo hacer una función propia.

Obtener el positivo del negativo

Primero comprobamos si el número es negativo, y para convertirlo simplemente lo multiplicamos por menos 1 o lo negamos. En este caso lo voy a multiplicar por -1. Entonces queda así:

double valorAbsoluto(double numero)
{
    if (numero < 0)
    {
        return numero * -1;
    }
    return numero;
}

Poniendo todo junto

No hay más que agregar, pasemos directamente al modo de uso desde el método main. El código queda así:

// https://parzibyte.me/blog/

#include <stdio.h>
#define CANTIDAD_NUMEROS 5

double valorAbsoluto(double numero)
{
    if (numero < 0)
    {
        return numero * -1;
    }
    return numero;
}

int main(int argc, char const *argv[])
{
    double numeros[CANTIDAD_NUMEROS] = {
        -50,
        1.23,
        -0.95341,
        -10,
        500.62};
    int i;
    for (i = 0; i < CANTIDAD_NUMEROS; i++)
    {
        double numero = numeros[i];
        printf("Valor absoluto de %lf: %lf\n", numero, valorAbsoluto(numero));
    }
    return 0;
}

Al ejecutarlo para probar la función, los resultados son correctos. Si el número ya es positivo, no se le hace modificación. Y en caso de que el mismo sea negativo, se convierte a positivo:

Valor absoluto en C

Puedes leer más sobre C en el blog de Parzibyte.

Si el post ha sido de tu agrado te invito a que me sigas para saber cuando haya escrito un nuevo post, haya actualizado algún sistema o publicado un nuevo software. Facebook | X | Instagram | Telegram | También estoy a tus órdenes para cualquier contratación en mi página de contacto