Цитата(TSerg @ Sep 23 2016, 23:41)

Просто для затравки.
Есть много способов - от Герона до рядов и до битных вычислений.
Еще один способ ( не претендуя на оригинальность - геометрический, итерационный).
Основан на приближении C^2 = A^2 + B^2.
Число итераций практически Ln(N).
Не очень быстрый, это факт (3..11 итераций).
Известен давно, но доработан до минимизации средней ошибки.
Там еще и деление на каждой итерации... Печаль. Лучше выбрать нечто более вычислительно простое из горы методов, предложенных здесь:
https://en.wikipedia.org/wiki/Methods_of_co...ng_square_rootsЯ сам полиномиальную аппроксимацию для нормализованных чисел использую. Получается:
Нормализация -> вычисление полинома степени 3 по схеме Горнера ->денормализация (половина сдвигов нормализации + умножение, если при нормализации количество сдвигов было нечетным)