En este post veremos cómo convertir un número negativo (ya sea entero o flotante) a positivo en C. Incluso si el número ya es positivo, no pasará nada ni habrá errores al convertirlo utilizando la función abs, fabs y fabsf.

Valor absoluto en C, o convertir número a positivo

Para esto, usaremos una función matemática (o lo que sea) llamada valor absoluto, que devuelve la distancia entre dos puntos de una recta; sin importar si uno de ellos es negativo, porque la distancia siempre es positiva.

La función para el valor absoluto

Dependiendo de la precisión y el tipo de dato, necesitarás una función diferente. Si únicamente quieres saber el valor absoluto de un entero, incluye a:

#include <stdlib.h>

Y llama a abs(valor); para obtener su representación positiva. Esta función es llamada abs, que quiere decir algo así como absolute value.

En caso de que requieras más precisión, por ejemplo de un tipo double o float, usa las funciones fabs y fabsf respectivamente, las cuales están definidas en math.h y puedes incluir así:

#include <math.h>

Así de simple es. Ahora veamos algunos ejemplos.

Convertir entero negativo a positivo en C

See the gist on github.

La función abs devuelve un entero positivo.

Doble negativo a positivo en C

See the gist on github.

En este caso usamos fabs, el cual recibe y devuelve un double.

Flotante negativo a positivo en C

Para una variable de tipo float usamos fabsf como se ve en el código:

See the gist on github.

Conclusiones

Me parece que también existe la función fabsl, la cual trabaja con el tipo long double(lo vi aquí).

Existen muchas funciones debido a los tipos de datos; cada una tiene una precisión distinta que servirá de acuerdo a nuestras necesidades.

En la mayoría de casos usaremos abs o fabsf para ejercicios comunes. Recuerda que el objetivo de este post era explicar cómo convertir un número negativo a positivo, y ya vimos cómo hacerlo sin que importe el tipo de dato.

Encantado de ayudarte


Estoy disponible para trabajar en tu proyecto, modificar el programa del post o realizar tu tarea pendiente, no dudes en ponerte en contacto conmigo.

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.
parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

Compartir
Publicado por
parzibyte

Entradas recientes

Solución: Unable to extract uploader id con youtube-dl

En mi blog te he enseñado a usar youtube-dl para descargar vídeos con permiso del…

2 días hace

Enviar foto a Telegram usando cURL y Bot

Siguiendo con los tutoriales que consumen la API de los Bots de Telegram con cURL…

2 días hace

cURL y Telegram: enviar mensaje a Bot

En un post previo te enseñé a enviar un mensaje en nombre de un Bot…

2 días hace

Impresora térmica con Telegram usando Bot

En este artículo te voy a mostrar una guía para imprimir en una impresora térmica…

2 días hace

Imprimir PDF con Bot de Telegram

La impresión de un PDF en cualquier impresora se puede automatizar con un bot de…

6 días hace

Enviar mensaje con bot de Telegram usando JavaScript (lado del cliente)

Hoy te enseñaré cómo enviar un mensaje a un usuario desde un bot de Telegram…

7 días hace

Esta web usa cookies.