En C++, puedes redondear números usando las funciones de la biblioteca <cmath>
, como round()
, floor()
y ceil()
. También puedes redondear a un número específico de decimales con operaciones matemáticas.
round()
– Redondeo al entero más cercano
La función round()
redondea un número flotante (double
o float
) al entero más cercano.
#include <iostream>
#include <cmath>
int main() {
std::cout << round(3.75) << std::endl; // Resultado: 4
std::cout << round(3.25) << std::endl; // Resultado: 3
std::cout << round(-3.5) << std::endl; // Resultado: -3
return 0;
}
floor()
– Redondeo hacia abajo
Devuelve el entero menor más cercano.
std::cout << floor(3.75) << std::endl; // Resultado: 3
std::cout << floor(-3.25) << std::endl; // Resultado: -4
ceil()
– Redondeo hacia arriba
Devuelve el entero mayor más cercano.
std::cout << ceil(3.25) << std::endl; // Resultado: 4
std::cout << ceil(-3.75) << std::endl; // Resultado: -3
C++ no tiene una función nativa para redondear a un número específico de decimales, pero se puede lograr con operaciones matemáticas:
double roundToDecimals(double num, int decimals) {
double factor = pow(10, decimals);
return round(num * factor) / factor;
}
int main() {
std::cout << roundToDecimals(3.14159, 2) << std::endl; // Resultado: 3.14
return 0;
}
Jorge García
Fullstack developer