Establecer precisión decimal en C

¿Cómo imprimir números de coma flotante con una precisión específica? No se requiere redondeo. Por ejemplo, 5,48958123 debe imprimirse como 5,4895 si la precisión dada es 4.

Por ejemplo, el siguiente programa establece la precisión de 4 dígitos después del punto decimal:

// C program to set precision in floating point numbers
#include<stdio.h>
#include<math.h>
int main()
{
   float num = 5.48958123;
  
   // 4 digits after the decimal point
   num = floor(10000*num)/10000;
  
   printf("%f", num);
   return 0;
}

Producción:

5.489500

Podemos generalizar el método anterior usando pow()

float newPrecision(float n, float i)
{
    return floor(pow(10,i)*n)/pow(10,i);
}


En C, hay un especificador de formato en C. Para imprimir 4 dígitos después del punto, podemos usar 0.4f en printf(). A continuación se muestra un programa para demostrar lo mismo
.

// C program to set precision in floating point numbers
// using format specifier
#include<stdio.h>
  
int main() 
{
    float num = 5.48958123;
  
    // 4 digits after the decimal point  
    printf("%0.4f", num); 
    return 0;
}

Producción:

5.4896

Este artículo es una contribución de Niharika Khandelwal . Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo y enviarlo por correo electrónico a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.

Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.

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 *