Разница между функциями round() и floor() в C++ заключается в том, как они округляют число:
- round() выполняет математически правильное округление к ближайшему целому, при этом половинные значения округляются в сторону от нуля. iq.opengenus.org proginfo.ru
- floor() округляет в сторону меньшего, вычисляя ближайшее целое число, меньшее или равное аргументу, и возвращая его в виде числа с плавающей точкой. metanit.com www.geeksforgeeks.org Например, выражение std::floor(2.5) возвращает 2.0, а std::floor(-2.5) — число -3.0 (дробная часть округляется до нуля). metanit.com
Таким образом, round() округляет в сторону ближайшего целого, а floor() — в сторону ближайшего целого, меньшего или равного аргументу. metanit.com www.geeksforgeeks.org