# Math Klasa

## Definicja

Zapewnia stałe i statyczne metody dla kątów, logarytmu i innych typowych funkcji matematycznych.Provides constants and static methods for trigonometric, logarithmic, and other common mathematical functions.

``public ref class Math abstract sealed``
``public static class Math``
``type Math = class``
``Public Class Math``
Dziedziczenie
Math

W poniższym przykładzie zastosowano kilka funkcji matematycznych i trygonometrycznych z klasy Math, aby obliczyć kąty wewnętrzne trapezu.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>
using namespace System;

public ref 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 sinX = GetHeight() / m_leftLeg;
return Math::Round( Math::Asin( sinX ), 2 );
}

{
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 = gcnew 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: {0}", h.ToString() );
Console::WriteLine( "Trapezoid left base angle is: {0} Radians", dxR.ToString() );
Console::WriteLine( "Trapezoid right base angle is: {0} Radians", dyR.ToString() );
double dxD = trpz->GetLeftBaseDegreeAngle();
Console::WriteLine( "Trapezoid left base angle is: {0} Degrees", dxD.ToString() );
double dyD = trpz->GetRightBaseDegreeAngle();
Console::WriteLine( "Trapezoid left base angle is: {0} Degrees", dyD.ToString() );
}
``````
``````/// <summary>
/// The following class represents simple functionality of the trapezoid.
/// </summary>
using System;

namespace MathClassCS
{
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;
}

{
double sinX = GetHeight()/m_leftLeg;
return Math.Round(Math.Asin(sinX),2);
}

{
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());
Console.WriteLine("Trapezoid left base angle is: " + dxR.ToString() + " Radians");
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");
}
}
}
``````
``````'The following class represents simple functionality 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

Dim sinX As Double = GetHeight() / m_leftLeg
End Function

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)
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 trapezoid'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
``````

## Pola

 Reprezentuje logarytm naturalny, określony przez stałą, `e`.Represents the natural logarithmic base, specified by the constant, `e`. Reprezentuje stosunek obwodu okręgu do jego średnicy, określonego przez stałą, π.Represents the ratio of the circumference of a circle to its diameter, specified by the constant, π.

## Metody

 Zwraca wartość bezwzględną liczby Decimal.Returns the absolute value of a Decimal number. Zwraca wartość bezwzględną liczby zmiennoprzecinkowej o podwójnej precyzji.Returns the absolute value of a double-precision floating-point number. Zwraca wartość bezwzględną 16-bitową liczbę całkowitą ze znakiem.Returns the absolute value of a 16-bit signed integer. Zwraca wartość bezwzględną 32-bitową liczbę całkowitą ze znakiem.Returns the absolute value of a 32-bit signed integer. Zwraca wartość bezwzględną 64-bitową liczbę całkowitą ze znakiem.Returns the absolute value of a 64-bit signed integer. Zwraca wartość bezwzględną 8-bitową liczbę całkowitą ze znakiem.Returns the absolute value of an 8-bit signed integer. Zwraca wartość bezwzględną liczby zmiennoprzecinkowej o pojedynczej precyzji.Returns the absolute value of a single-precision floating-point number. Zwraca kąt, którego cosinus jest równy podanej liczbie.Returns the angle whose cosine is the specified number. Zwraca kąt, którego cosinus hiperboliczny jest równy podanej liczbie.Returns the angle whose hyperbolic cosine is the specified number. Zwraca kąt, którego sinus jest równy podanej liczbie.Returns the angle whose sine is the specified number. Zwraca kąt, którego sinus hiperboliczny jest podaną liczbą.Returns the angle whose hyperbolic sine is the specified number. Zwraca kąt, którego tangens jest równy podanej liczbie.Returns the angle whose tangent is the specified number. Zwraca kąt, którego tangens jest ilorazem dwóch określonych liczb.Returns the angle whose tangent is the quotient of two specified numbers. Zwraca kąt, którego tangens hiperboliczny jest równy podanej liczbie.Returns the angle whose hyperbolic tangent is the specified number. Tworzy pełny iloczyn liczby 2 32-bitowych.Produces the full product of two 32-bit numbers. Zwraca następną najmniejszą wartość, która porównuje mniej niż `x`.Returns the next smallest value that compares less than `x`. Zwraca następną największą wartość, która porównuje więcej niż `x`.Returns the next largest value that compares greater than `x`. Zwraca katalog główny modułu o podanej liczbie.Returns the cube root of a specified number. Zwraca najmniejszą wartość całkowitą, która jest większa lub równa określonej liczbie dziesiętnej.Returns the smallest integral value that is greater than or equal to the specified decimal number. Zwraca najmniejszą wartość całkowitą, która jest większa lub równa określonej liczbie zmiennoprzecinkowej podwójnej precyzji.Returns the smallest integral value that is greater than or equal to the specified double-precision floating-point number. Zwraca `value` zamocowany do zakresu z zakresem `min` i `max`.Returns `value` clamped to the inclusive range of `min` and `max`. Zwraca `value` zamocowany do zakresu z zakresem `min` i `max`.Returns `value` clamped to the inclusive range of `min` and `max`. Zwraca `value` zamocowany do zakresu z zakresem `min` i `max`.Returns `value` clamped to the inclusive range of `min` and `max`. Zwraca `value` zamocowany do zakresu z zakresem `min` i `max`.Returns `value` clamped to the inclusive range of `min` and `max`. Zwraca `value` zamocowany do zakresu z zakresem `min` i `max`.Returns `value` clamped to the inclusive range of `min` and `max`. Zwraca `value` zamocowany do zakresu z zakresem `min` i `max`.Returns `value` clamped to the inclusive range of `min` and `max`. Zwraca `value` zamocowany do zakresu z zakresem `min` i `max`.Returns `value` clamped to the inclusive range of `min` and `max`. Zwraca `value` zamocowany do zakresu z zakresem `min` i `max`.Returns `value` clamped to the inclusive range of `min` and `max`. Zwraca `value` zamocowany do zakresu z zakresem `min` i `max`.Returns `value` clamped to the inclusive range of `min` and `max`. Zwraca `value` zamocowany do zakresu z zakresem `min` i `max`.Returns `value` clamped to the inclusive range of `min` and `max`. Zwraca `value` zamocowany do zakresu z zakresem `min` i `max`.Returns `value` clamped to the inclusive range of `min` and `max`. Zwraca wartość o wielkości `x` i znaku `y`.Returns a value with the magnitude of `x` and the sign of `y`. Zwraca cosinus określonego kąta.Returns the cosine of the specified angle. Zwraca cosinus hiperboliczny odpowiadający podanemu kątowi.Returns the hyperbolic cosine of the specified angle. Oblicza iloraz 2 32-bitowych liczb całkowitych ze znakiem, a także Zwraca resztę w parametrze wyjściowym.Calculates the quotient of two 32-bit signed integers and also returns the remainder in an output parameter. Oblicza iloraz 2 64-bitowych liczb całkowitych ze znakiem, a także Zwraca resztę w parametrze wyjściowym.Calculates the quotient of two 64-bit signed integers and also returns the remainder in an output parameter. Zwraca `e` podniesioną do określonej potęgi.Returns `e` raised to the specified power. Zwraca największą wartość całkowitą mniejszą lub równą określonej liczbie dziesiętnej.Returns the largest integral value less than or equal to the specified decimal number. Zwraca największą wartość całkowitą mniejszą lub równą podanej liczbie zmiennoprzecinkowej podwójnej precyzji.Returns the largest integral value less than or equal to the specified double-precision floating-point number. Zwraca (x * y) + z, zaokrąglone jako jedna operacja Trzyelementowy.Returns (x * y) + z, rounded as one ternary operation. Zwraca resztę z dzielenia przez określony numer przez inny określony numer.Returns the remainder resulting from the division of a specified number by another specified number. Zwraca logarytm dziesiętny z podanej liczby.Returns the base 2 integer logarithm of a specified number. Zwraca logarytm naturalny (podstawowy `e`) podanej liczby.Returns the natural (base `e`) logarithm of a specified number. Zwraca logarytm o podanej liczbie w określonej bazie.Returns the logarithm of a specified number in a specified base. Zwraca logarytm dziesiętny z podanej liczby.Returns the base 10 logarithm of a specified number. Zwraca logarytm o podstawie 2 dla podanej liczby.Returns the base 2 logarithm of a specified number. Zwraca większe z dwóch 8-bitowych liczb całkowitych bez znaku.Returns the larger of two 8-bit unsigned integers. Zwraca większą z dwóch liczb dziesiętnych.Returns the larger of two decimal numbers. Zwraca więcej dwóch liczb zmiennoprzecinkowych o podwójnej precyzji.Returns the larger of two double-precision floating-point numbers. Zwraca większą z 2 16-bitowych liczb całkowitych ze znakiem.Returns the larger of two 16-bit signed integers. Zwraca większą z 2 32-bitowych liczb całkowitych ze znakiem.Returns the larger of two 32-bit signed integers. Zwraca większą z 2 64-bitowych liczb całkowitych ze znakiem.Returns the larger of two 64-bit signed integers. Zwraca większe z dwóch 8-bitowych liczb całkowitych ze znakiem.Returns the larger of two 8-bit signed integers. Zwraca więcej dwóch liczb zmiennoprzecinkowych o pojedynczej precyzji.Returns the larger of two single-precision floating-point numbers. Zwraca większą z 2 16-bitowych liczb całkowitych bez znaku.Returns the larger of two 16-bit unsigned integers. Zwraca większą z 2 32-bitowych liczb całkowitych bez znaku.Returns the larger of two 32-bit unsigned integers. Zwraca większą z 2 64-bitowych liczb całkowitych bez znaku.Returns the larger of two 64-bit unsigned integers. Zwraca większą liczbę liczb zmiennoprzecinkowych o podwójnej precyzji.Returns the larger magnitude of two double-precision floating-point numbers. Zwraca mniejsze z dwóch 8-bitowych liczb całkowitych bez znaku.Returns the smaller of two 8-bit unsigned integers. Zwraca mniejsze z dwóch liczb dziesiętnych.Returns the smaller of two decimal numbers. Zwraca mniejsze z dwóch liczb zmiennoprzecinkowych o podwójnej precyzji.Returns the smaller of two double-precision floating-point numbers. Zwraca mniejsze z 2 16-bitowych liczb całkowitych ze znakiem.Returns the smaller of two 16-bit signed integers. Zwraca mniejsze z 2 32-bitowych liczb całkowitych ze znakiem.Returns the smaller of two 32-bit signed integers. Zwraca mniejsze z 2 64-bitowych liczb całkowitych ze znakiem.Returns the smaller of two 64-bit signed integers. Zwraca mniejsze z dwóch 8-bitowych liczb całkowitych ze znakiem.Returns the smaller of two 8-bit signed integers. Zwraca mniejsze z dwóch liczb zmiennoprzecinkowych o pojedynczej precyzji.Returns the smaller of two single-precision floating-point numbers. Zwraca mniejsze z 2 16-bitowych liczb całkowitych bez znaku.Returns the smaller of two 16-bit unsigned integers. Zwraca mniejsze z 2 32-bitowych liczb całkowitych bez znaku.Returns the smaller of two 32-bit unsigned integers. Zwraca mniejsze z 2 64-bitowych liczb całkowitych bez znaku.Returns the smaller of two 64-bit unsigned integers. Zwraca mniejszy rozmiar dwóch liczb zmiennoprzecinkowych podwójnej precyzji.Returns the smaller magnitude of two double-precision floating-point numbers. Zwraca określoną liczbę podniesioną do określonej potęgi.Returns a specified number raised to the specified power. Zaokrągla wartość dziesiętną do najbliższej wartości całkowitej i zaokrągla wartości punktu środkowego do najbliższej parzystej liczby.Rounds a decimal value to the nearest integral value, and rounds midpoint values to the nearest even number. Zaokrągla wartość dziesiętną do określonej liczby cyfr ułamkowych i zaokrągla wartości punktu środkowego do najbliższej parzystej liczby.Rounds a decimal value to a specified number of fractional digits, and rounds midpoint values to the nearest even number. Zaokrągla wartość dziesiętną do określonej liczby cyfr ułamkowych i używa określonej konwencji zaokrąglania dla wartości punktu środkowego.Rounds a decimal value to a specified number of fractional digits, and uses the specified rounding convention for midpoint values. Zaokrągla wartość dziesiętną do najbliższej liczby całkowitej i używa określonej konwencji zaokrąglania dla wartości punktu środkowego.Rounds a decimal value to the nearest integer, and uses the specified rounding convention for midpoint values. Zaokrągla wartość zmiennoprzecinkową o podwójnej precyzji do najbliższej wartości całkowitej i zaokrągla wartości punktu środkowego do najbliższej parzystej liczby.Rounds a double-precision floating-point value to the nearest integral value, and rounds midpoint values to the nearest even number. Zaokrągla wartość zmiennoprzecinkową o podwójnej precyzji do określonej liczby cyfr ułamkowych i zaokrągla wartości punktu środkowego do najbliższej parzystej liczby.Rounds a double-precision floating-point value to a specified number of fractional digits, and rounds midpoint values to the nearest even number. Zaokrągla wartość zmiennoprzecinkową o podwójnej precyzji do określonej liczby cyfr ułamkowych i używa określonej konwencji zaokrąglania dla wartości punktu środkowego.Rounds a double-precision floating-point value to a specified number of fractional digits, and uses the specified rounding convention for midpoint values. Zaokrągla wartość zmiennoprzecinkową o podwójnej precyzji do najbliższej liczby całkowitej i używa określonej konwencji zaokrąglania dla wartości środkowych.Rounds a double-precision floating-point value to the nearest integer, and uses the specified rounding convention for midpoint values. Zwraca wartość x * 2 ^ n obliczoną efektywnie.Returns x * 2^n computed efficiently. Zwraca liczbę całkowitą, która wskazuje znak liczby dziesiętnej.Returns an integer that indicates the sign of a decimal number. Zwraca liczbę całkowitą, która wskazuje znak liczby zmiennoprzecinkowej podwójnej precyzji.Returns an integer that indicates the sign of a double-precision floating-point number. Zwraca liczbę całkowitą wskazującą znak 16-bitowej podpisanej liczby całkowitej.Returns an integer that indicates the sign of a 16-bit signed integer. Zwraca liczbę całkowitą wskazującą znak 32-bitową liczbę całkowitą ze znakiem.Returns an integer that indicates the sign of a 32-bit signed integer. Zwraca liczbę całkowitą wskazującą znak 64-bitową liczbę całkowitą ze znakiem.Returns an integer that indicates the sign of a 64-bit signed integer. Zwraca liczbę całkowitą wskazującą znak 8-bitowej podpisanej liczby całkowitej.Returns an integer that indicates the sign of an 8-bit signed integer. Zwraca liczbę całkowitą wskazującą znak liczby zmiennoprzecinkowej o pojedynczej precyzji.Returns an integer that indicates the sign of a single-precision floating-point number. Zwraca sinus określonego kąta.Returns the sine of the specified angle. Zwraca sinus hiperboliczny odpowiadający podanemu kątowi.Returns the hyperbolic sine of the specified angle. Zwraca pierwiastek kwadratowy z podanej liczby.Returns the square root of a specified number. Zwraca tangens podanego kąta.Returns the tangent of the specified angle. Zwraca tangens hiperboliczny odpowiadający podanemu kątowi.Returns the hyperbolic tangent of the specified angle. Oblicza integralną część określonej liczby dziesiętnej.Calculates the integral part of a specified decimal number. Oblicza integralną część określonej liczby zmiennoprzecinkowej podwójnej precyzji.Calculates the integral part of a specified double-precision floating-point number.