/* test.cpp * Реализация тестов для функций библиотеки func.h */ #include #include #include #include "func.h" #include "test.h" using namespace std; // Точность сравнения вещественных чисел const double precision = 1E-16; //Функция 1 bool test_distance() { double x1 = 0, y1 = 0; double x2 = 1, y2 = 0; double result = 1; // Тест 1 - единичный отрезок assert ( abs ( distance (x1,y1,x2,y2) - result) < precision); x1 = 2; y1 = 5; x2 = 3; y2 = 4; result = sqrt(2); // Тест 2 - отрезок иррациональной длины assert ( abs ( distance (x1,y1,x2,y2) - result) < precision); x1 = -2; y1 = -5; x2 = -2; y2 = -5; result = 0; // Тест 3 - отрезок нулевой длины assert ( abs ( distance (x1,y1,x2,y2) - result) < precision); // Проверка запуска в режиме отладки (макрос _DEBUG) #ifndef NDEBUG // Этот код будет скомпилирован только в режиме отладки // std::cerr - стандартный поток вывода для ошибок // по умолчанию выводит на консоль cerr<<"distance test: OK"<