Math 클래스

정의

삼각, 로그 및 기타 일반 수학 함수에 대한 상수 및 정적 메서드를 제공합니다.

``public ref class Math abstract sealed``
``public ref class Math sealed``
``public static class Math``
``public sealed class Math``
``type Math = class``
``Public Class Math``
``Public NotInheritable Class Math``
상속
Math

예제

다음 예제에서는 클래스의 여러 수학 및 삼각 함수를 Math 사용하여 사다리꼴의 내부 각도를 계산합니다.

``````/// <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");
}
}
}
``````
``````open System

/// The following class represents simple functionality of the trapezoid.
type MathTrapezoidSample(longbase, shortbase, leftLeg, rightLeg) =
member _.GetRightSmallBase() =
(Math.Pow(rightLeg, 2.) - Math.Pow(leftLeg, 2.) + Math.Pow(longbase, 2.) + Math.Pow(shortbase, 2.) - 2. * shortbase * longbase) / (2. * (longbase - shortbase))

member this.GetHeight() =
let x = this.GetRightSmallBase()
Math.Sqrt(Math.Pow(rightLeg, 2.) - Math.Pow(x, 2.))

member this.GetSquare() =
this.GetHeight() * longbase / 2.

let sinX = this.GetHeight() / leftLeg
Math.Round(Math.Asin sinX,2)

let x = this.GetRightSmallBase()
let cosX = (Math.Pow(rightLeg, 2.) + Math.Pow(x, 2.) - Math.Pow(this.GetHeight(), 2.))/(2. * x * rightLeg)
Math.Round(Math.Acos cosX, 2)

member this.GetLeftBaseDegreeAngle() =
let x = this.GetLeftBaseRadianAngle() * 180. / Math.PI
Math.Round(x, 2)

member this.GetRightBaseDegreeAngle() =
let x = this.GetRightBaseRadianAngle() * 180. / Math.PI
Math.Round(x, 2)

let trpz = MathTrapezoidSample(20., 10., 8., 6.)
printfn "The trapezoid's bases are 20.0 and 10.0, the trapezoid's legs are 8.0 and 6.0"
let h = trpz.GetHeight()
printfn \$"Trapezoid height is: {h}"
printfn \$"Trapezoid left base angle is: {dxR} Radians"
printfn \$"Trapezoid right base angle is: {dyR} Radians"
let dxD = trpz.GetLeftBaseDegreeAngle()
printfn \$"Trapezoid left base angle is: {dxD} Degrees"
let dyD = trpz.GetRightBaseDegreeAngle()
printfn \$"Trapezoid left base angle is: {dyD} 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
``````

필드

 상수, `e`로 지정된 자연 로그의 밑을 나타냅니다. 상수(π)로 지정된 원주율을 나타냅니다. 상수 τ로 지정된 한 턴의 라디안 수를 나타냅니다.

메서드

 Decimal 숫자의 절대값을 반환합니다. 배정밀도 부동 소수점 수의 절대 값을 반환합니다. 16비트 부호 있는 정수의 절대 값을 반환합니다. 32비트 부호 있는 정수의 절대 값을 반환합니다. 64비트 부호 있는 정수의 절대 값을 반환합니다. 네이티브 부속 정수의 절대값을 반환합니다. 8비트 부호 있는 정수의 절대 값을 반환합니다. 단정밀도 부동 소수점 수의 절대 값을 반환합니다. 코사인을 적용했을 때 지정된 숫자가 나오는 각도를 반환합니다. 쌍곡선 코사인을 적용했을 때 지정된 숫자가 나오는 각도를 반환합니다. 사인을 적용했을 때 지정된 숫자가 나오는 각도를 반환합니다. 쌍곡선 사인을 적용했을 때 지정된 숫자가 나오는 각도를 반환합니다. 탄젠트를 적용했을 때 지정된 숫자가 나오는 각도를 반환합니다. 탄젠트를 적용했을 때 지정된 두 숫자의 몫이 나오는 각도를 반환합니다. 쌍곡선 탄젠트를 적용했을 때 지정된 숫자가 나오는 각도를 반환합니다. 32비트 숫자 두 개를 곱합니다. 64비트 숫자 두 개를 곱합니다. 부호 없는 64비트 숫자 두 개를 곱합니다. `x`보다 작은 값을 비교하여 다음으로 작은 값을 반환합니다. `x`보다 큰 값을 비교하여 다음으로 큰 값을 반환합니다. 지정된 숫자의 세제곱근을 반환합니다. 지정된 10진수보다 크거나 같은 최소 정수 값을 반환합니다. 지정된 배정밀도 부동 소수점 숫자보다 크거나 같은 최소 정수 값을 반환합니다. `min` 및 `max`의 포괄적인 범위에 고정되어 있는 `value`를 반환합니다. `min` 및 `max`의 포괄적인 범위에 고정되어 있는 `value`를 반환합니다. `min` 및 `max`의 포괄적인 범위에 고정되어 있는 `value`를 반환합니다. `min` 및 `max`의 포괄적인 범위에 고정되어 있는 `value`를 반환합니다. `min` 및 `max`의 포괄적인 범위에 고정되어 있는 `value`를 반환합니다. `min` 및 `max`의 포괄적인 범위에 고정되어 있는 `value`를 반환합니다. `min` 및 `max`의 포괄적인 범위에 고정되어 있는 `value`를 반환합니다. `min` 및 `max`의 포괄적인 범위에 고정되어 있는 `value`를 반환합니다. `min` 및 `max`의 포괄적인 범위에 고정되어 있는 `value`를 반환합니다. `min` 및 `max`의 포괄적인 범위에 고정되어 있는 `value`를 반환합니다. `min` 및 `max`의 포괄적인 범위에 고정되어 있는 `value`를 반환합니다. `min` 및 `max`의 포괄적인 범위에 고정되어 있는 `value`를 반환합니다. `min` 및 `max`의 포괄적인 범위에 고정되어 있는 `value`를 반환합니다. `x`의 크기 및 `y`의 부호 값을 반환합니다. 지정된 각도의 코사인을 반환합니다. 지정된 각도의 하이퍼볼릭 코사인을 반환합니다. 부호 없는 8비트 숫자 두 개와 나머지 몫을 생성합니다. 부호 있는 두 개의 16비트 숫자의 몫과 나머지를 생성합니다. 부호 있는 두 개의 32비트 숫자의 몫과 나머지를 생성합니다. 부호 있는 두 32비트 정수의 몫을 계산하고 나머지를 출력 매개 변수로 반환합니다. 부호 있는 두 개의 64비트 숫자의 몫과 나머지를 생성합니다. 부호 있는 두 64비트 정수의 몫을 계산하고 나머지를 출력 매개 변수로 반환합니다. 부호 있는 두 개의 네이티브 크기 숫자의 몫과 나머지를 생성합니다. 부호 있는 두 8비트 숫자의 몫과 나머지를 생성합니다. 부호 없는 16비트 숫자 두 개와 나머지 몫을 생성합니다. 부호 없는 32비트 숫자 두 개와 나머지 몫을 생성합니다. 부호 없는 64비트 숫자 두 개와 나머지 몫을 생성합니다. 부호 없는 두 개의 네이티브 크기 숫자의 몫과 나머지를 생성합니다. `e`를 지정된 수만큼 거듭제곱하여 반환합니다. 지정된 10진수보다 작거나 같은 최대 정수 값을 반환합니다. 지정된 배정밀도 부동 소수점 숫자보다 작거나 같은 최대 정수 값을 반환합니다. 하나의 삼항 연산으로 반올림한 (x * y) + z를 반환합니다. 지정된 수를 지정된 다른 수로 나눈 나머지를 반환합니다. 지정된 숫자의 기본 2 정수 로그를 반환합니다. 지정된 숫자의 자연(밑 `e`) 로그를 반환합니다. 지정된 밑을 사용하여 지정된 숫자의 로그를 반환합니다. 밑을 10으로 사용하여 지정된 숫자의 로그를 반환합니다. 밑을 2로 사용하여 지정된 숫자의 로그를 반환합니다. 두 개의 8비트 부호 없는 정수 중 더 큰 숫자를 반환합니다. 두 개의 10진수 중 더 큰 숫자를 반환합니다. 두 개의 배정밀도 부동 소수점 수 중 더 큰 숫자를 반환합니다. 두 개의 16비트 부호 있는 정수 중 더 큰 숫자를 반환합니다. 두 개의 32비트 부호 있는 정수 중 더 큰 숫자를 반환합니다. 두 개의 64비트 부호 있는 정수 중 더 큰 숫자를 반환합니다. 두 개의 네이티브 부백 정수 중 더 큰 값을 반환합니다. 두 개의 8비트 부호 있는 정수 중 더 큰 숫자를 반환합니다. 두 개의 단정밀도 부동 소수점 수 중 더 큰 숫자를 반환합니다. 두 개의 16비트 부호 없는 정수 중 더 큰 숫자를 반환합니다. 두 개의 32비트 부호 없는 정수 중 더 큰 숫자를 반환합니다. 두 개의 64비트 부호 없는 정수 중 더 큰 숫자를 반환합니다. 두 개의 네이티브 부호 없는 정수 중 더 큰 값을 반환합니다. 두 개의 배정밀도 부동 소수점 수 중 더 큰 크기를 반환합니다. 두 개의 8비트 부호 없는 정수 중 더 작은 숫자를 반환합니다. 두 개의 10진수 중 더 작은 숫자를 반환합니다. 두 개의 배정밀도 부동 소수점 수 중 더 작은 숫자를 반환합니다. 두 개의 16비트 부호 있는 정수 중 더 작은 숫자를 반환합니다. 두 개의 32비트 부호 있는 정수 중 더 작은 숫자를 반환합니다. 두 개의 64비트 부호 있는 정수 중 더 작은 숫자를 반환합니다. 두 개의 네이티브 부백 정수 중 더 작은 정수 값을 반환합니다. 두 개의 8비트 부호 있는 정수 중 더 작은 숫자를 반환합니다. 두 개의 단정밀도 부동 소수점 수 중 더 작은 숫자를 반환합니다. 두 개의 16비트 부호 없는 정수 중 더 작은 숫자를 반환합니다. 두 개의 32비트 부호 없는 정수 중 더 작은 숫자를 반환합니다. 두 개의 64비트 부호 없는 정수 중 더 작은 숫자를 반환합니다. 두 개의 네이티브 부호 없는 정수 중 더 작은 정수 값을 반환합니다. 두 개의 배정밀도 부동 소수점 수 중 더 작은 크기를 반환합니다. 지정된 숫자의 지정된 거듭제곱을 반환합니다. 지정된 숫자의 역수에 대한 예상값을 반환합니다. 지정된 수의 역 제곱근의 예상 값을 반환합니다. 10진수 값을 가장 가까운 정수로 반올림하고 중간점 값을 가장 가까운 짝수로 반올림합니다. 소수 자릿수가 지정된 수의 10진수 값을 반올림하고 중간점 값을 가장 가까운 짝수로 반올림합니다. 지정된 반올림 규칙을 사용하여 소수 자릿수 값을 지정된 소수 자릿수로 반올림합니다. 지정된 반올림 규칙을 사용하여 10진수 값을 정수로 반올림합니다. 배정밀도 부동 소수점 값을 가장 가까운 정수 값으로 반올림하고 중간점 값을 가장 가까운 짝수로 반올림합니다. 지정된 수의 소수 자릿수를 배정밀도 부동 소수점 값으로 반올림하고 중간점 값을 가장 가까운 짝수로 반올림합니다. 지정된 반올림 규칙을 사용하여 배정밀도 부동 소수점 값을 지정된 소수 자릿수로 반올림합니다. 지정된 반올림 규칙을 사용하여 배정밀도 부동 소수점 값을 정수로 반올림합니다. 효율적으로 계산된 x * 2^n을 반환합니다. 10진수의 부호를 나타내는 정수를 반환합니다. 배정밀도 부동 소수점 수의 부호를 나타내는 정수를 반환합니다. 16비트 부호 있는 정수의 부호를 나타내는 정수를 반환합니다. 32비트 부호 있는 정수의 부호를 나타내는 정수를 반환합니다. 64비트 부호 있는 정수의 부호를 나타내는 정수를 반환합니다. 네이티브 크기의 부호 있는 정수의 부호를 나타내는 정수 값을 반환합니다. 8비트 부호 있는 정수의 부호를 나타내는 정수를 반환합니다. 단정밀도 부동 소수점 숫자의 부호를 나타내는 정수를 반환합니다. 지정된 각도의 사인을 반환합니다. 지정된 각도의 사인과 코사인을 반환합니다. 지정된 각도의 하이퍼볼릭 사인을 반환합니다. 지정된 숫자의 제곱근을 반환합니다. 지정된 각도의 탄젠트를 반환합니다. 지정된 각도의 하이퍼볼릭 탄젠트를 반환합니다. 지정된 10진수에서 정수 부분을 계산합니다. 지정한 배정밀도 부동 소수점 숫자의 정수 부분을 계산합니다.