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