Math.Sqrt Method
.NET Framework 1.1
Returns the square root of a specified number.
[Visual Basic] Public Shared Function Sqrt( _ ByVal d As Double _ ) As Double [C#] public static double Sqrt( double d ); [C++] public: static double Sqrt( double d ); [JScript] public static function Sqrt( d : double ) : double;
Parameters
- d
- A number.
Return Value
| Value of d | Returns |
|---|---|
| Zero, or positive | The positive square root of d. |
| Negative | NaN |
If d is equal to NaN or PositiveInfinity, that value is returned.
Example
[Visual Basic, C#, C++] The following code sample uses Sqrt to assist in the computation of the inner angles of a given trapezoid.
[Visual Basic] 'The following class represents simple functionallity of the Trapezoid Class MathTrapezoidSample Private m_longBase As Double Private m_shortBase As Double Private m_leftLeg As Double Private m_rightLeg As Double Public Sub New(ByVal longbase As Double, ByVal shortbase As Double, ByVal leftLeg As Double, ByVal rightLeg As Double) m_longBase = Math.Abs(longbase) m_shortBase = Math.Abs(shortbase) m_leftLeg = Math.Abs(leftLeg) m_rightLeg = Math.Abs(rightLeg) End Sub Private Function GetRightSmallBase() As Double GetRightSmallBase = (Math.Pow(m_rightLeg, 2) - Math.Pow(m_leftLeg, 2) + Math.Pow(m_longBase, 2) + Math.Pow(m_shortBase, 2) - 2 * m_shortBase * m_longBase) / (2 * (m_longBase - m_shortBase)) End Function Public Function GetHeight() As Double Dim x As Double = GetRightSmallBase() GetHeight = Math.Sqrt(Math.Pow(m_rightLeg, 2) - Math.Pow(x, 2)) End Function Public Function GetSquare() As Double GetSquare = GetHeight() * m_longBase / 2 End Function Public Function GetLeftBaseRadianAngle() As Double Dim sinX As Double = GetHeight() / m_leftLeg GetLeftBaseRadianAngle = Math.Round(Math.Asin(sinX), 2) End Function Public Function GetRightBaseRadianAngle() As Double Dim x As Double = GetRightSmallBase() Dim cosX As Double = (Math.Pow(m_rightLeg, 2) + Math.Pow(x, 2) - Math.Pow(GetHeight(), 2)) / (2 * x * m_rightLeg) GetRightBaseRadianAngle = Math.Round(Math.Acos(cosX), 2) End Function Public Function GetLeftBaseDegreeAngle() As Double Dim x As Double = GetLeftBaseRadianAngle() * 180 / Math.PI GetLeftBaseDegreeAngle = Math.Round(x, 2) End Function Public Function GetRightBaseDegreeAngle() As Double Dim x As Double = GetRightBaseRadianAngle() * 180 / Math.PI GetRightBaseDegreeAngle = Math.Round(x, 2) End Function Public Shared Sub Main() Dim trpz As MathTrapezoidSample = New MathTrapezoidSample(20, 10, 8, 6) Console.WriteLine("The trpezoid's bases are 20.0 and 10.0, the trapezoid's legs are 8.0 and 6.0") Dim h As Double = trpz.GetHeight() Console.WriteLine("Trapezoid height is: " + h.ToString()) Dim dxR As Double = trpz.GetLeftBaseRadianAngle() Console.WriteLine("Trapezoid left base angle is: " + dxR.ToString() + " Radians") Dim dyR As Double = trpz.GetRightBaseRadianAngle() Console.WriteLine("Trapezoid right base angle is: " + dyR.ToString() + " Radians") Dim dxD As Double = trpz.GetLeftBaseDegreeAngle() Console.WriteLine("Trapezoid left base angle is: " + dxD.ToString() + " Degrees") Dim dyD As Double = trpz.GetRightBaseDegreeAngle() Console.WriteLine("Trapezoid left base angle is: " + dyD.ToString() + " Degrees") End Sub End Class [C#] /// <summary> /// The following class represents simple functionallity of the Trapezoid /// </summary> class MathTrapezoidSample { private double m_longBase; private double m_shortBase; private double m_leftLeg; private double m_rightLeg; public MathTrapezoidSample(double longbase, double shortbase, double leftLeg, double rightLeg) { m_longBase = Math.Abs(longbase); m_shortBase = Math.Abs(shortbase); m_leftLeg = Math.Abs(leftLeg); m_rightLeg = Math.Abs(rightLeg); } private double GetRightSmallBase() { return (Math.Pow(m_rightLeg,2.0) - Math.Pow(m_leftLeg,2.0) + Math.Pow(m_longBase,2.0) + Math.Pow(m_shortBase,2.0) - 2* m_shortBase * m_longBase)/ (2*(m_longBase - m_shortBase)); } public double GetHeight() { double x = GetRightSmallBase(); return Math.Sqrt(Math.Pow(m_rightLeg,2.0) - Math.Pow(x,2.0)); } public double GetSquare() { return GetHeight() * m_longBase / 2.0; } public double GetLeftBaseRadianAngle() { double sinX = GetHeight()/m_leftLeg; return Math.Round(Math.Asin(sinX),2); } public double GetRightBaseRadianAngle() { double x = GetRightSmallBase(); double cosX = (Math.Pow(m_rightLeg,2.0) + Math.Pow(x,2.0) - Math.Pow(GetHeight(),2.0))/(2*x*m_rightLeg); return Math.Round(Math.Acos(cosX),2); } public double GetLeftBaseDegreeAngle() { double x = GetLeftBaseRadianAngle() * 180/ Math.PI; return Math.Round(x,2); } public double GetRightBaseDegreeAngle() { double x = GetRightBaseRadianAngle() * 180/ Math.PI; return Math.Round(x,2); } static void Main(string[] args) { MathTrapezoidSample trpz = new MathTrapezoidSample(20.0, 10.0, 8.0, 6.0); Console.WriteLine("The trpezoid's bases are 20.0 and 10.0, the trapezoid's legs are 8.0 and 6.0"); double h = trpz.GetHeight(); Console.WriteLine("Trapezoid height is: " + h.ToString()); double dxR = trpz.GetLeftBaseRadianAngle(); Console.WriteLine("Trapezoid left base angle is: " + dxR.ToString() + " Radians"); double dyR = trpz.GetRightBaseRadianAngle(); Console.WriteLine("Trapezoid right base angle is: " + dyR.ToString() + " Radians"); double dxD = trpz.GetLeftBaseDegreeAngle(); Console.WriteLine("Trapezoid left base angle is: " + dxD.ToString() + " Degrees"); double dyD = trpz.GetRightBaseDegreeAngle(); Console.WriteLine("Trapezoid left base angle is: " + dyD.ToString() + " Degrees"); } } [C++] /// <summary> /// The following class represents simple functionality of the Trapezoid /// </summary> public __gc class MathTrapezoidSample { private: double m_longBase; double m_shortBase; double m_leftLeg; double m_rightLeg; public: MathTrapezoidSample(double longbase, double shortbase, double leftLeg, double rightLeg) { m_longBase = Math::Abs(longbase); m_shortBase = Math::Abs(shortbase); m_leftLeg = Math::Abs(leftLeg); m_rightLeg = Math::Abs(rightLeg); } private: double GetRightSmallBase() { return ( Math::Pow(m_rightLeg, 2.0) - Math::Pow(m_leftLeg, 2.0) + Math::Pow(m_longBase, 2.0) + Math::Pow(m_shortBase, 2.0) - 2* m_shortBase * m_longBase ) / (2*(m_longBase - m_shortBase)); } public: double GetHeight() { double x = GetRightSmallBase(); return Math::Sqrt(Math::Pow(m_rightLeg, 2.0) - Math::Pow(x, 2.0)); } double GetSquare() { return GetHeight() * m_longBase / 2.0; } double GetLeftBaseRadianAngle() { double sinX = GetHeight()/m_leftLeg; return Math::Round(Math::Asin(sinX), 2); } double GetRightBaseRadianAngle() { double x = GetRightSmallBase(); double cosX = (Math::Pow(m_rightLeg, 2.0) + Math::Pow(x, 2.0) - Math::Pow(GetHeight(), 2.0)) / (2*x*m_rightLeg); return Math::Round(Math::Acos(cosX), 2); } double GetLeftBaseDegreeAngle() { double x = GetLeftBaseRadianAngle() * 180 / Math::PI; return Math::Round(x, 2); } double GetRightBaseDegreeAngle() { double x = GetRightBaseRadianAngle() * 180 / Math::PI; return Math::Round(x, 2); } }; int main() { MathTrapezoidSample* trpz = new MathTrapezoidSample(20.0, 10.0, 8.0, 6.0); Console::WriteLine(S"The trpezoid's bases are 20.0 and 10.0, the trapezoid's legs are 8.0 and 6.0"); double h = trpz->GetHeight(); Console::WriteLine(S"Trapezoid height is: {0}", h.ToString()); double dxR = trpz->GetLeftBaseRadianAngle(); Console::WriteLine(S"Trapezoid left base angle is: {0} Radians", dxR.ToString()); double dyR = trpz->GetRightBaseRadianAngle(); Console::WriteLine(S"Trapezoid right base angle is: {0} Radians", dyR.ToString()); double dxD = trpz->GetLeftBaseDegreeAngle(); Console::WriteLine(S"Trapezoid left base angle is: {0} Degrees", dxD.ToString()); double dyD = trpz->GetRightBaseDegreeAngle(); Console::WriteLine(S"Trapezoid left base angle is: {0} Degrees", dyD.ToString()); }
[JScript] No example is available for JScript. To view a Visual Basic, C#, or C++ example, click the Language Filter button
in the upper-left corner of the page.
Requirements
Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family, .NET Compact Framework, Common Language Infrastructure (CLI) Standard