У меня сильное чувство, что ваш 4/5
- целые числа. Что означало бы, что 4/5
будет оцениваться до 0
из-за целочисленного деления.
log(0)
- это отрицательная бесконечность, которая может быть источником вашего NaN
.
Чтобы это исправить, приведите ваши числа к плавающей точке, прежде чем делать деление:
double x = (double)4 / 5;