數學函式 (Visual Basic)
System.Math 類別的方法提供三角、對數和其他常見的數學函式。
備註
以下資料表列出 System.Math 類別的方法。 您可以在 Visual Basic 程式中使用這些函式:
.NET 方法 | 描述 |
---|---|
Abs | 傳回 數字的絕對值。 |
Acos | 傳回餘弦函數 (Cosine) 是指定數字的角。 |
Asin | 傳回正弦函數 (Sine) 是指定數字的角。 |
Atan | 傳回正切函數 (Tangent) 是指定數字的角。 |
Atan2 | 傳回正切函數是兩個指定數字之商數的角。 |
BigMul | 傳回 2 個 32 位元數字的完整乘積。 |
Ceiling | 傳回大於或等於指定 Decimal 或 Double 的最小整數值。 |
Cos | 傳回指定角的餘弦函數。 |
Cosh | 傳回指定角的雙曲線餘弦函數。 |
DivRem | 傳回兩個 32 位元或 64 位元帶正負號的整數商數,並傳回餘數做為輸出參數。 |
Exp | 傳回 e (自然對數的底數) 的指定次方。 |
Floor | 傳回小於或等於指定 Decimal 或 Double 數字的最大整數。 |
IEEERemainder | 傳回指定數字除以另一個指定數字所得的餘數。 |
Log | 傳回指定數字的自然 (底數 e) 對數,或指定底數的指定數字對數。 |
Log10 | 傳回指定數字的以 10 為底數的對數。 |
Max | 傳回兩個數字中較大的數字。 |
Min | 傳回兩個數字中較小的一個。 |
Pow | 傳回具有指定乘冪數的指定數字。 |
Round | 傳回 Decimal 或 Double 值四捨五入為最接近的整數值,或傳回指定的小數位數。 |
Sign | 傳回指示數字正負號的 Integer 值。 |
Sin | 傳回指定角的正弦函數。 |
Sinh | 傳回指定角的雙曲線正弦函數。 |
Sqrt | 傳回指定數字的平方根。 |
Tan | 傳回指定角的正切函數。 |
Tanh | 傳回指定角的雙曲線正切函數。 |
Truncate | 計算指定 Decimal 或 Double 數字的整數部分。 |
下表列出不存在於 .NET Framework 中,但在 .NET Standard 或 .NET Core 中新增的 System.Math 類別方法:
.NET 方法 | 描述 | Available in |
---|---|---|
Acosh | 傳回雙曲線餘弦函數是指定數字的角。 | 從 .NET Core 2.1 和 .NET Standard 2.1 開始 |
Asinh | 傳回雙曲線正弦函數是指定數字的角。 | 從 .NET Core 2.1 和 .NET Standard 2.1 開始 |
Atanh | 傳回雙曲線正弦函數是指定數字的角。 | 從 .NET Core 2.1 和 .NET Standard 2.1 開始 |
BitDecrement | 傳回下一個比 x 小的最小值。 |
從 .NET Core 3.0 開始 |
BitIncrement | 傳回下一個比 x 大的最大值。 |
從 .NET Core 3.0 開始 |
Cbrt | 傳回指定數字的立方根。 | 從 .NET Core 2.1 和 .NET Standard 2.1 開始 |
Clamp | 傳回限制為 min 和 max 內含範圍的 value 。 |
從 .NET Core 2.0 和 .NET Standard 2.1 開始 |
CopySign | 傳回量級為 x 且符號為 y 的值。 |
從 .NET Core 3.0 開始 |
FusedMultiplyAdd | 傳回 (x * y) + z,四捨五入為一個三元運算。 | 從 .NET Core 3.0 開始 |
ILogB | 傳回以 2 為底數時指定數字的整數對數。 | 從 .NET Core 3.0 開始 |
Log2 | 傳回以 2 為底數時指定數字的對數。 | 從 .NET Core 3.0 開始 |
MaxMagnitude | 傳回兩個雙精確度浮點數中較大的那個量級。 | 從 .NET Core 3.0 開始 |
MinMagnitude | 傳回兩個雙精確度浮點數中較小的那個量級。 | 從 .NET Core 3.0 開始 |
ScaleB | 傳回有效率計算的 x * 2^n。 | 從 .NET Core 3.0 開始 |
若要在不使用限定性條件的情況下運用這些函式,請將下列程式碼新增至原始程式檔頂端,將 System.Math 命名空間匯入您的專案中:
Imports System.Math
範例 - Abs
這個範例會使用 Math 類別的 Abs 方法來計算數字的絕對值。
Dim x As Double = Math.Abs(50.3)
Dim y As Double = Math.Abs(-50.3)
Console.WriteLine(x)
Console.WriteLine(y)
' This example produces the following output:
' 50.3
' 50.3
範例 - Atan
這個範例會使用 Math 類別的 Atan 方法來計算 pi 的值。
Public Function GetPi() As Double
' Calculate the value of pi.
Return 4.0 * Math.Atan(1.0)
End Function
注意
System.Math 類別包含 Math.PI 常數欄位。 您可以直接使用,而不必計算。
範例 - Cos
這個範例會使用 Math 類別的 Cos 方法傳回角度的餘弦值。
Public Function Sec(angle As Double) As Double
' Calculate the secant of angle, in radians.
Return 1.0 / Math.Cos(angle)
End Function
範例 - Exp
這個範例會使用 Math 類別的 Exp 方法傳回 e 的次方。
Public Function Sinh(angle As Double) As Double
' Calculate hyperbolic sine of an angle, in radians.
Return (Math.Exp(angle) - Math.Exp(-angle)) / 2.0
End Function
範例 - Log
這個範例會使用 Math 類別的 Log 方法傳回數字的自然對數。
Public Function Asinh(value As Double) As Double
' Calculate inverse hyperbolic sine, in radians.
Return Math.Log(value + Math.Sqrt(value * value + 1.0))
End Function
範例 - Round
這個範例會使用 Math 類別的 Round 方法,將數字四捨五入到最接近的整數。
Dim myVar2 As Double = Math.Round(2.8)
Console.WriteLine(myVar2)
' The code produces the following output:
' 3
範例 - Sign
這個範例會使用 Math 類別的 Sign 方法來判斷數字的符號。
Dim mySign1 As Integer = Math.Sign(12)
Dim mySign2 As Integer = Math.Sign(-2.4)
Dim mySign3 As Integer = Math.Sign(0)
Console.WriteLine(mySign1)
Console.WriteLine(mySign2)
Console.WriteLine(mySign3)
' The code produces the following output:
' 1
' -1
' 0
範例 - Sin
這個範例會使用 Math 類別的 Sin 方法傳回角度的正弦值。
Public Function Csc(angle As Double) As Double
' Calculate cosecant of an angle, in radians.
Return 1.0 / Math.Sin(angle)
End Function
範例 - Sqrt
這個範例會使用 Math 類別的 Sqrt 方法來計算數字的平方根。
Dim mySqrt1 As Double = Math.Sqrt(4)
Dim mySqrt2 As Double = Math.Sqrt(23)
Dim mySqrt3 As Double = Math.Sqrt(0)
Dim mySqrt4 As Double = Math.Sqrt(-4)
Console.WriteLine(mySqrt1)
Console.WriteLine(mySqrt2)
Console.WriteLine(mySqrt3)
Console.WriteLine(mySqrt4)
' The code produces the following output:
' 2
' 4.79583152331272
' 0
' NaN
範例 - Tan
這個範例會使用 Math 類別的 Tan 方法傳回角度的正切值。
Public Function Ctan(angle As Double) As Double
' Calculate cotangent of an angle, in radians.
Return 1.0 / Math.Tan(angle)
End Function