Реализуя метод проверки числа на простоту, по следам нахождения простых чисел:
Я стал разбираться, как работает Math.sqrt
.
Реализация – простая, java.lang.Math
делегирует работу java.lang.StrictMath
:
Комментарий про хардварные инструкции очень интересен и надо смотреть код jdk, чтобы разобраться, как они подставляются и на каком этапе.
В идее доступен лишь вызов нативного метода в java.lang.StrictMath
:
Как следует из javadoc, реализация берется из библиотеки fdlibm.
И там реализация устрашающая e_sqrt.c.
Я решил накидать свою для интереса.
И методом половинного деления для натуральных чисел написал такую программульку:
Она проще и короче, но боюсь работает адски долго.