Реализация C # Math.Sqrt

В последнее время я довольно часто использую System.Math, и на днях мне было интересно, как Microsoft реализовала бы метод Sqrt в библиотеке. Итак, я открыл свой лучший помощник Reflector и попытался дизассемблировать метод в библиотеке, но он показал:

[MethodImpl(MethodImplOptions.InternalCall),ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)]
public static extern double Sqrt(double d);

В тот день я впервые в жизни осознал, насколько мои дети зависят от фреймворка в плане питания.

Без шуток, но мне было интересно, какой алгоритм использовала бы MS для реализации этого метода или, другими словами, как бы вы написали свою собственную реализацию Math.Sqrt на C #, если бы у вас не было поддержки библиотеки.

Ура.

10
задан Raghu 8 February 2011 в 10:25
поделиться