пятница, 31 августа 2007 г.

Java Puzzle 29: Bride of Looper

Сделайте цикл бесконечным:
while (i != i)

После предыдущей задачки эта оказалась легче. Спецификация Java гласит: NaN не равно никакому значению с плавающей запятой, включая себя. Вот и ответ:
double i = Double.NAN;

Кроме того, NaN содержит еще сюрприз. Если один из операндов NaN, то результат всегда будет NaN:
double i = Double.NAN;
i - i != 0

Одним из основных правил NaN является правило, что если в резултате вычислений получен NaN, то вычисление неправильное и никакие дальнейшие вычисления не могут его исправить.

Комментариев нет:

Отправить комментарий