Merge branch 'master' of gitlab.2:f1x1t/myxlib
This commit is contained in:
31
src/myx/math/almost_equal_relative.hpp
Normal file
31
src/myx/math/almost_equal_relative.hpp
Normal file
@ -0,0 +1,31 @@
|
||||
#ifndef MYX_MATH_ALMOST_EQUAL_RELATIVE_HPP_
|
||||
#define MYX_MATH_ALMOST_EQUAL_RELATIVE_HPP_
|
||||
|
||||
#include <cfloat>
|
||||
|
||||
// https://randomascii.wordpress.com/2012/02/25/comparing-floating-point-numbers-2012-edition/
|
||||
|
||||
namespace myx {
|
||||
|
||||
namespace math {
|
||||
|
||||
/**
|
||||
* @brief Проверка на равенство двух аргументов типа float.
|
||||
* Параметр maxRelDiff определяет максимальную относительную допустимую разницу,
|
||||
* при которой аргументы считаются равными.
|
||||
*/
|
||||
bool almost_equal_relative( const float a, const float b,
|
||||
const float maxRelDiff = FLT_EPSILON );
|
||||
/**
|
||||
* @brief Проверка на равенство двух аргументов типа double.
|
||||
* Параметр maxRelDiff определяет максимальную относительную допустимую разницу,
|
||||
* при которой аргументы считаются равными.
|
||||
*/
|
||||
bool almost_equal_relative( const double a, const double b,
|
||||
const double maxRelDiff = DBL_EPSILON );
|
||||
|
||||
} // namespace math
|
||||
|
||||
} // namespace myx
|
||||
|
||||
#endif // MYX_MATH_ALMOST_EQUAL_RELATIVE_HPP_
|
Reference in New Issue
Block a user