Escriba una función C de una línea para redondear números de coma flotante

Algoritmo: roundNo(num)
1. Si num es positivo, agregue 0.5.
2. De lo contrario, reste 0,5.
3. Escriba cast the result a int y regrese.

Ejemplo:
num = 1.67, (int) num + 0.5 = (int)2.17 = 2
num = -1.67, (int) num – 0.5 = -(int)2.17 = -2

Implementación:

/* Program for rounding floating point numbers */
# include<stdio.h>
  
int roundNo(float num)
{
    return num < 0 ? num - 0.5 : num + 0.5;
}
  
int main()
{
    printf("%d", roundNo(-1.777));
    getchar();
    return 0;
}

Salida: -2

Complejidad temporal: O(1)
Complejidad espacial: O(1)

Ahora intente redondear para una precisión dada. es decir, si la precisión dada es 2, entonces la función debería devolver 1,63 para 1,63322 y -1,63 para 1,6332.

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

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