Расчет Фибоначчи в Java Longs показывает отрицательный
Мой калькулятор Фибоначчи работает нормально, но при увеличении числа результат получается отрицательным, как если бы он былInteger
сверх его максимального значения.
Работает с кешемjava.util.Map<Integer, Long>
, Все, что входит вMap
это именно то, что ожидается, но при распечатке я получаю, например, для 291:
-784134397488903422
В соответствии сhttp://www.maths.surrey.ac.uk/hosted-sites/R.Knott/Fibonacci/fibCalcX.html, так должно быть:
2923602405716568564338475449381171413803636207598822186175234
Кажется, что-то идет не так с моимLong
с, но я пока не уверен, что именно. Может ли кто-нибудь, пожалуйста, указать мне в правильном направлении?
ЗначенияMap
записей:http://pastebin.com/uje07Ays