Si se desea redondear el valor 1.768 a dos decimales se puede hacer lo siguiente:
floor(1.768*100+0.5)/100
Nota. se coloca
10 : 1 decimal
100 : 2 decimales
1000: 3 decimales...
Este es el efecto que se logra (paso a paso):
floor(1.768*100+0.5)/100
= floor(176.8 +0.5)/100
= floor(177.3 )/100
= 177 /100
= 1.77
Se pueden crear las siguientes macro (colócalas al inicio de tu código fuente):
#define ROUND(num) floor(num*100+0.5)/100
#define ROUND_V2(num,dec) floor(num*(pow(10,dec))+0.5)/pow(10,dec)
Pueden ser usadas de la siguiente forma:
float num = ROUND(1.7684); // produce 1.77
float num2 = ROUND_V2(1.7684,2); // produce 1.77
float num3 = ROUND_V2(1.7684,1); // produce 1.8
float num4 = ROUND_V2(1.7684,3); // produce 1.768



1 comentario:
Excelentes aportes, por favor sube mas cosas porfavor
Publicar un comentario