30 lines
1.4 KiB
C++
30 lines
1.4 KiB
C++
#ifndef MYX_MATH_ALMOST_EQUAL_ULPS_HPP_
|
|
#define MYX_MATH_ALMOST_EQUAL_ULPS_HPP_
|
|
|
|
namespace myx {
|
|
|
|
namespace math {
|
|
|
|
/**
|
|
* @brief Проверка на равенство двух аргументов типа float.
|
|
* Параметр maxAbsDiff определяет максимальную абсолютную допустимую разницу.
|
|
* Параметр maxUlpsDiff определяет максимальную разницу между аргументами,
|
|
* при которой они считаются равными.
|
|
*/
|
|
bool almost_equal_ulps_and_abs( const float a, const float b,
|
|
const float maxAbsDiff, const int maxUlpsDiff );
|
|
/**
|
|
* @brief Проверка на равенство двух аргументов типа double.
|
|
* Параметр maxAbsDiff определяет максимальную абсолютную допустимую разницу.
|
|
* Параметр maxUlpsDiff определяет максимальную разницу между аргументами,
|
|
* при которой они считаются равными.
|
|
*/
|
|
bool almost_equal_ulps_and_abs( const double a, const double b,
|
|
const double maxAbsDiff, const int maxUlpsDiff );
|
|
|
|
} // namespace math
|
|
|
|
} // namespace myx
|
|
|
|
#endif // MYX_MATH_ALMOST_EQUAL_ULPS_HPP_
|