-nan(ind) в результате вычислений

У меня есть задача с некоторыми числовыми вычислениями и аппроксимацией дифф. уравнения, в частности используется такие библиотечные функции, как Zeroin, Rkf45, Spline, SEval и quanc8, написанные на C. Подключенные к проекту на C++ так:

extern "C"
{
#include "cmath.h"
};

При запуске программы массив выходных значений выдает -nan(ind). Однако в процессе лютой ярости программа была запущена несколько раз без каких-то изменений и в один из запусков массив результата выдал существующие значения.

В результате, каждые 10-15 запусков программа считает все правильно. Понимаю, что вопрос без кода достаточно абстрактный, так что прикладываю ссылку с паролем на pastebin. Я знаю, что nan - это результат неверных вычислений, но почему после неоднократного перезапуска программа выдавала (и продолжает выдавать) верные математические результаты? С чем это может быть связано?

pastebin: https://pastebin.com/QvNkVbcz password: 44yjWs7dDx


Ответы (1 шт):

Автор решения: Rezistence

Обычно если вы пользуетесь Visual Studio, он выдает -nan(ind) когда что-то вышло за границы переменной которую вы используете.

Для примера можно взять факториал и если будет стоять тип int и Вы введете 20 то тоже напишет в результате -nan(ind).

→ Ссылка