Export (0) Print
Expand All

Math Class

Provides constants and static methods for trigonometric, logarithmic, and other common mathematical functions.

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)

public static class Math

The Math type exposes the following members.

  NameDescription
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryAbs(Decimal)Returns the absolute value of a Decimal number.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryAbs(Double)Returns the absolute value of a double-precision floating-point number.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryAbs(Int16)Returns the absolute value of a 16-bit signed integer.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryAbs(Int32)Returns the absolute value of a 32-bit signed integer.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryAbs(Int64)Returns the absolute value of a 64-bit signed integer.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryAbs(SByte)Returns the absolute value of an 8-bit signed integer.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryAbs(Single)Returns the absolute value of a single-precision floating-point number.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryAcosReturns the angle whose cosine is the specified number.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryAsinReturns the angle whose sine is the specified number.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryAtanReturns the angle whose tangent is the specified number.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryAtan2Returns the angle whose tangent is the quotient of two specified numbers.
Public methodStatic memberBigMulProduces the full product of two 32-bit numbers.
Public methodStatic memberCeiling(Decimal)Returns the smallest integral value that is greater than or equal to the specified decimal number.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryCeiling(Double)Returns the smallest integral value that is greater than or equal to the specified double-precision floating-point number.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryCosReturns the cosine of the specified angle.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryCoshReturns the hyperbolic cosine of the specified angle.
Public methodStatic memberDivRem(Int32, Int32, Int32)Calculates the quotient of two 32-bit signed integers and also returns the remainder in an output parameter.
Public methodStatic memberDivRem(Int64, Int64, Int64)Calculates the quotient of two 64-bit signed integers and also returns the remainder in an output parameter.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryExpReturns e raised to the specified power.
Public methodStatic memberFloor(Decimal)Returns the largest integer less than or equal to the specified decimal number.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryFloor(Double)Returns the largest integer less than or equal to the specified double-precision floating-point number.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryIEEERemainderReturns the remainder resulting from the division of a specified number by another specified number.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryLog(Double)Returns the natural (base e) logarithm of a specified number.
Public methodStatic memberSupported by Portable Class LibraryLog(Double, Double)Returns the logarithm of a specified number in a specified base.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryLog10Returns the base 10 logarithm of a specified number.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryMax(Byte, Byte)Returns the larger of two 8-bit unsigned integers.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryMax(Decimal, Decimal)Returns the larger of two decimal numbers.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryMax(Double, Double)Returns the larger of two double-precision floating-point numbers.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryMax(Int16, Int16)Returns the larger of two 16-bit signed integers.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryMax(Int32, Int32)Returns the larger of two 32-bit signed integers.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryMax(Int64, Int64)Returns the larger of two 64-bit signed integers.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryMax(SByte, SByte)Returns the larger of two 8-bit signed integers.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryMax(Single, Single)Returns the larger of two single-precision floating-point numbers.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryMax(UInt16, UInt16)Returns the larger of two 16-bit unsigned integers.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryMax(UInt32, UInt32)Returns the larger of two 32-bit unsigned integers.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryMax(UInt64, UInt64)Returns the larger of two 64-bit unsigned integers.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryMin(Byte, Byte)Returns the smaller of two 8-bit unsigned integers.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryMin(Decimal, Decimal)Returns the smaller of two decimal numbers.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryMin(Double, Double)Returns the smaller of two double-precision floating-point numbers.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryMin(Int16, Int16)Returns the smaller of two 16-bit signed integers.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryMin(Int32, Int32)Returns the smaller of two 32-bit signed integers.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryMin(Int64, Int64)Returns the smaller of two 64-bit signed integers.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryMin(SByte, SByte)Returns the smaller of two 8-bit signed integers.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryMin(Single, Single)Returns the smaller of two single-precision floating-point numbers.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryMin(UInt16, UInt16)Returns the smaller of two 16-bit unsigned integers.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryMin(UInt32, UInt32)Returns the smaller of two 32-bit unsigned integers.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryMin(UInt64, UInt64)Returns the smaller of two 64-bit unsigned integers.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryPowReturns a specified number raised to the specified power.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryRound(Decimal)Rounds a decimal value to the nearest integral value.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryRound(Double)Rounds a double-precision floating-point value to the nearest integral value.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryRound(Decimal, Int32)Rounds a decimal value to a specified number of fractional digits.
Public methodStatic memberRound(Decimal, MidpointRounding)Rounds a decimal value to the nearest integer. A parameter specifies how to round the value if it is midway between two other numbers.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryRound(Double, Int32)Rounds a double-precision floating-point value to a specified number of fractional digits.
Public methodStatic memberRound(Double, MidpointRounding)Rounds a double-precision floating-point value to the nearest integer. A parameter specifies how to round the value if it is midway between two other numbers.
Public methodStatic memberRound(Decimal, Int32, MidpointRounding)Rounds a decimal value to a specified number of fractional digits. A parameter specifies how to round the value if it is midway between two other numbers.
Public methodStatic memberRound(Double, Int32, MidpointRounding)Rounds a double-precision floating-point value to the specified number of fractional digits. A parameter specifies how to round the value if it is midway between two other numbers.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibrarySign(Decimal)Returns a value indicating the sign of a decimal number.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibrarySign(Double)Returns a value indicating the sign of a double-precision floating-point number.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibrarySign(Int16)Returns a value indicating the sign of a 16-bit signed integer.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibrarySign(Int32)Returns a value indicating the sign of a 32-bit signed integer.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibrarySign(Int64)Returns a value indicating the sign of a 64-bit signed integer.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibrarySign(SByte)Returns a value indicating the sign of an 8-bit signed integer.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibrarySign(Single)Returns a value indicating the sign of a single-precision floating-point number.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibrarySinReturns the sine of the specified angle.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibrarySinhReturns the hyperbolic sine of the specified angle.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibrarySqrtReturns the square root of a specified number.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryTanReturns the tangent of the specified angle.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryTanhReturns the hyperbolic tangent of the specified angle.
Public methodStatic memberTruncate(Decimal)Calculates the integral part of a specified decimal number.
Public methodStatic memberTruncate(Double)Calculates the integral part of a specified double-precision floating-point number.
Top

  NameDescription
Public fieldStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryERepresents the natural logarithmic base, specified by the constant, e.
Public fieldStatic memberSupported by the XNA FrameworkSupported by Portable Class LibraryPIRepresents the ratio of the circumference of a circle to its diameter, specified by the constant, π.
Top

The following example uses several mathematical and trigonometric functions from the Math class to calculate the inner angles of a trapezoid.


	/// <summary>
	/// The following class represents simple functionality 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 trapezoid'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");
		}
	}


.NET Framework

Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Portable Class Library

Supported in: Portable Class Library

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Was this page helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

Show:
© 2014 Microsoft