# Math Classe

## Définition

Fournit des constantes et des méthodes statiques pour des fonctions trigonométriques, logarithmiques et d'autres fonctions mathématiques courantes.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``
Héritage
Math

## Exemples

L’exemple suivant utilise plusieurs fonctions mathématiques et trigonométriques de la classe Math pour calculer les angles intérieurs d’un trapèze.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() );
double dxR = trpz->GetLeftBaseRadianAngle();
Console::WriteLine( "Trapezoid left base angle is: {0} Radians", dxR.ToString() );
double dyR = trpz->GetRightBaseRadianAngle();
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());
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");
}
}
}
``````
``````'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

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 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
``````

## Champs

 Représente la base logarithmique naturelle spécifiée par la constante `e`.Represents the natural logarithmic base, specified by the constant, `e`. Représente le rapport de la circonférence d’un cercle à son diamètre, spécifié par la constante π.Represents the ratio of the circumference of a circle to its diameter, specified by the constant, π.

## Méthodes

 Retourne la valeur absolue d'un nombre Decimal.Returns the absolute value of a Decimal number. Retourne la valeur absolue d'un nombre à virgule flottante double précision.Returns the absolute value of a double-precision floating-point number. Retourne la valeur absolue d'un entier signé 16 bits.Returns the absolute value of a 16-bit signed integer. Retourne la valeur absolue d'un entier signé 32 bits.Returns the absolute value of a 32-bit signed integer. Retourne la valeur absolue d'un entier signé 64 bits.Returns the absolute value of a 64-bit signed integer. Retourne la valeur absolue d'un entier signé 8 bits.Returns the absolute value of an 8-bit signed integer. Retourne la valeur absolue d'un nombre à virgule flottante simple précision.Returns the absolute value of a single-precision floating-point number. Retourne l'angle dont le cosinus est le nombre spécifié.Returns the angle whose cosine is the specified number. Retourne l'angle dont le cosinus hyperbolique est le nombre spécifié.Returns the angle whose hyperbolic cosine is the specified number. Retourne l'angle dont le sinus est le nombre spécifié.Returns the angle whose sine is the specified number. Retourne l’angle dont le sinus hyperbolique est le nombre spécifié.Returns the angle whose hyperbolic sine is the specified number. Retourne l'angle dont la tangente est le nombre spécifié.Returns the angle whose tangent is the specified number. Retourne l'angle dont la tangente est le quotient de deux nombres spécifiés.Returns the angle whose tangent is the quotient of two specified numbers. Retourne l’angle dont la tangente hyperbolique est le nombre spécifié.Returns the angle whose hyperbolic tangent is the specified number. Génère le produit intégral de deux nombres 32 bits.Produces the full product of two 32-bit numbers. Retourne la plus petite valeur suivante qui est inférieure à `x`.Returns the next smallest value that compares less than `x`. Retourne la plus grande valeur suivante qui est supérieure à `x`.Returns the next largest value that compares greater than `x`. Retourne la racine cubique d’un nombre spécifié.Returns the cube root of a specified number. Retourne la plus petite valeur intégrale supérieure ou égale au nombre décimal spécifié.Returns the smallest integral value that is greater than or equal to the specified decimal number. Retourne la plus petite valeur intégrale supérieure ou égale au nombre à virgule flottante double précision spécifié.Returns the smallest integral value that is greater than or equal to the specified double-precision floating-point number. Retourne `value`, valeur limitée à la plage inclusive `min`-`max`.Returns `value` clamped to the inclusive range of `min` and `max`. Retourne `value`, valeur limitée à la plage inclusive `min`-`max`.Returns `value` clamped to the inclusive range of `min` and `max`. Retourne `value`, valeur limitée à la plage inclusive `min`-`max`.Returns `value` clamped to the inclusive range of `min` and `max`. Retourne `value`, valeur limitée à la plage inclusive `min`-`max`.Returns `value` clamped to the inclusive range of `min` and `max`. Retourne `value`, valeur limitée à la plage inclusive `min`-`max`.Returns `value` clamped to the inclusive range of `min` and `max`. Retourne `value`, valeur limitée à la plage inclusive `min`-`max`.Returns `value` clamped to the inclusive range of `min` and `max`. Retourne `value`, valeur limitée à la plage inclusive `min`-`max`.Returns `value` clamped to the inclusive range of `min` and `max`. Retourne `value`, valeur limitée à la plage inclusive `min`-`max`.Returns `value` clamped to the inclusive range of `min` and `max`. Retourne `value`, valeur limitée à la plage inclusive `min`-`max`.Returns `value` clamped to the inclusive range of `min` and `max`. Retourne `value`, valeur limitée à la plage inclusive `min`-`max`.Returns `value` clamped to the inclusive range of `min` and `max`. Retourne `value`, valeur limitée à la plage inclusive `min`-`max`.Returns `value` clamped to the inclusive range of `min` and `max`. Retourne une valeur d’amplitude `x` et de signe `y`.Returns a value with the magnitude of `x` and the sign of `y`. Retourne le cosinus de l'angle spécifié.Returns the cosine of the specified angle. Retourne le cosinus hyperbolique de l'angle spécifié.Returns the hyperbolic cosine of the specified angle. Calcule le quotient de deux entiers signés 32 bits et retourne également le reste dans un paramètre de sortie.Calculates the quotient of two 32-bit signed integers and also returns the remainder in an output parameter. Calcule le quotient de deux entiers signés 64 bits et retourne également le reste dans un paramètre de sortie.Calculates the quotient of two 64-bit signed integers and also returns the remainder in an output parameter. Retourne `e` élevé à la puissance spécifiée.Returns `e` raised to the specified power. Retourne la valeur du plus grand entier inférieur ou égal au nombre décimal spécifié.Returns the largest integral value less than or equal to the specified decimal number. Retourne la valeur du plus grand entier inférieur ou égal au nombre à virgule flottante double précision spécifié.Returns the largest integral value less than or equal to the specified double-precision floating-point number. Retourne (x * y) + z, arrondi en une seule opération ternaire.Returns (x * y) + z, rounded as one ternary operation. Retourne le reste de la division d'un nombre spécifié par un autre.Returns the remainder resulting from the division of a specified number by another specified number. Retourne le logarithme entier de base 2 d’un nombre spécifié.Returns the base 2 integer logarithm of a specified number. Retourne le logarithme naturel (base `e`) d'un nombre spécifié.Returns the natural (base `e`) logarithm of a specified number. Retourne le logarithme d'un nombre spécifié dans une base spécifiée.Returns the logarithm of a specified number in a specified base. Retourne le logarithme de base 10 d'un nombre spécifié.Returns the base 10 logarithm of a specified number. Retourne le logarithme de base 2 d’un nombre spécifié.Returns the base 2 logarithm of a specified number. Retourne le plus grand de deux entiers non signés 8 bits.Returns the larger of two 8-bit unsigned integers. Retourne le plus grand de deux nombres décimaux.Returns the larger of two decimal numbers. Retourne le plus grand de deux nombres à virgule flottante double précision.Returns the larger of two double-precision floating-point numbers. Retourne le plus grand de deux entiers signés 16 bits.Returns the larger of two 16-bit signed integers. Retourne le plus grand de deux entiers signés 32 bits.Returns the larger of two 32-bit signed integers. Retourne le plus grand de deux entiers signés 64 bits.Returns the larger of two 64-bit signed integers. Retourne le plus grand de deux entiers signés 8 bits.Returns the larger of two 8-bit signed integers. Retourne le plus grand de deux nombres à virgule flottante simple précision.Returns the larger of two single-precision floating-point numbers. Retourne le plus grand de deux entiers non signés 16 bits.Returns the larger of two 16-bit unsigned integers. Retourne le plus grand de deux entiers non signés 32 bits.Returns the larger of two 32-bit unsigned integers. Retourne le plus grand de deux entiers non signés 64 bits.Returns the larger of two 64-bit unsigned integers. Retourne la plus grande amplitude de deux nombres à virgule flottante double précision.Returns the larger magnitude of two double-precision floating-point numbers. Retourne le plus petit de deux entiers non signés 8 bits.Returns the smaller of two 8-bit unsigned integers. Retourne le plus petit de deux nombres décimaux.Returns the smaller of two decimal numbers. Retourne le plus petit de deux nombres à virgule flottante double précision.Returns the smaller of two double-precision floating-point numbers. Retourne le plus petit de deux entiers signés 16 bits.Returns the smaller of two 16-bit signed integers. Retourne le plus petit de deux entiers signés 32 bits.Returns the smaller of two 32-bit signed integers. Retourne le plus petit de deux entiers signés 64 bits.Returns the smaller of two 64-bit signed integers. Retourne le plus petit de deux entiers signés 8 bits.Returns the smaller of two 8-bit signed integers. Retourne le plus petit de deux nombres à virgule flottante simple précision.Returns the smaller of two single-precision floating-point numbers. Retourne le plus petit de deux entiers non signés 16 bits.Returns the smaller of two 16-bit unsigned integers. Retourne le plus petit de deux entiers non signés 32 bits.Returns the smaller of two 32-bit unsigned integers. Retourne le plus petit de deux entiers non signés 64 bits.Returns the smaller of two 64-bit unsigned integers. Retourne la plus petite amplitude de deux nombres à virgule flottante double précision.Returns the smaller magnitude of two double-precision floating-point numbers. Retourne un nombre spécifié élevé à la puissance spécifiée.Returns a specified number raised to the specified power. Arrondit une valeur décimale au nombre entier le plus proche, et les valeurs médianes au nombre pair le plus proche.Rounds a decimal value to the nearest integral value, and rounds midpoint values to the nearest even number. Arrondit une valeur décimale au nombre de chiffres fractionnaires spécifié, et les valeurs médianes au nombre pair le plus proche.Rounds a decimal value to a specified number of fractional digits, and rounds midpoint values to the nearest even number. Arrondit une valeur décimale au nombre de chiffres fractionnaires spécifié, et utilise la convention d’arrondi spécifiée pour les valeurs médianes.Rounds a decimal value to a specified number of fractional digits, and uses the specified rounding convention for midpoint values. Arrondit une valeur décimale au nombre entier le plus proche, et utilise la convention d’arrondi spécifiée pour les valeurs médianes.Rounds a decimal value to the nearest integer, and uses the specified rounding convention for midpoint values. Arrondit un nombre à virgule flottante double précision au nombre entier le plus proche, et les valeurs médianes au nombre pair le plus proche.Rounds a double-precision floating-point value to the nearest integral value, and rounds midpoint values to the nearest even number. Arrondit un nombre à virgule flottante double précision au nombre de chiffres fractionnaires spécifié, et les valeurs médianes au nombre pair le plus proche.Rounds a double-precision floating-point value to a specified number of fractional digits, and rounds midpoint values to the nearest even number. Arrondit un nombre à virgule flottante double précision au nombre de chiffres fractionnaires spécifié, et utilise la convention d’arrondi spécifiée pour les valeurs médianes.Rounds a double-precision floating-point value to a specified number of fractional digits, and uses the specified rounding convention for midpoint values. Arrondit un nombre à virgule flottante double précision au nombre entier le plus proche, et utilise la convention d’arrondi spécifiée pour les valeurs médianes.Rounds a double-precision floating-point value to the nearest integer, and uses the specified rounding convention for midpoint values. Retourne x * 2 ^ n calculé efficacement.Returns x * 2^n computed efficiently. Retourne un entier qui indique le signe d’un nombre décimal.Returns an integer that indicates the sign of a decimal number. Retourne un entier qui indique le signe d’un nombre à virgule flottante double précision.Returns an integer that indicates the sign of a double-precision floating-point number. Retourne un entier qui indique le signe d’un entier signé 16 bits.Returns an integer that indicates the sign of a 16-bit signed integer. Retourne un entier qui indique le signe d’un entier signé 32 bits.Returns an integer that indicates the sign of a 32-bit signed integer. Retourne un entier qui indique le signe d’un entier signé 64 bits.Returns an integer that indicates the sign of a 64-bit signed integer. Retourne un entier qui indique le signe d’un entier signé 8 bits.Returns an integer that indicates the sign of an 8-bit signed integer. Retourne un entier qui indique le signe d’un nombre à virgule flottante simple précision.Returns an integer that indicates the sign of a single-precision floating-point number. Retourne le sinus de l'angle spécifié.Returns the sine of the specified angle. Retourne le sinus hyperbolique de l'angle spécifié.Returns the hyperbolic sine of the specified angle. Retourne la racine carrée d'un nombre spécifié.Returns the square root of a specified number. Retourne la tangente de l'angle spécifié.Returns the tangent of the specified angle. Retourne la tangente hyperbolique de l'angle spécifié.Returns the hyperbolic tangent of the specified angle. Calcule la partie entière d'un nombre décimal spécifié.Calculates the integral part of a specified decimal number. Calcule la partie entière d'un nombre à virgule flottante double précision spécifié.Calculates the integral part of a specified double-precision floating-point number.