Поделиться через


Математические функции (Visual Basic)

Методы System.Math класса предоставляют тригонометрические, логарифмические и другие распространенные математические функции.

Замечания

В следующей System.Math таблице перечислены методы класса. Их можно использовать в программе Visual Basic:

Метод .NET Description
Abs Возвращает абсолютное значение числа.
Acos Возвращает угол, косинус которого равен указанному числу.
Asin Возвращает угол, синус которого равен указанному числу.
Atan Возвращает угол, тангенс которого равен указанному числу.
Atan2 Возвращает угол, тангенс которого равен отношению двух указанных чисел.
BigMul Возвращает полный продукт двух 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 числа.

В следующей таблице перечислены методы System.Math класса, которые не существуют в платформа .NET Framework, но добавляются в .NET Standard или .NET Core:

Метод .NET Description Доступно в
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 Возвращает value, ограниченное диапазоном от min до max включительно. Начиная с .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

Пример — журнал

В этом примере метод 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

Пример — округление

В этом примере метод Math класса используется Round для округления числа до ближайшего целого числа.

Dim myVar2 As Double = Math.Round(2.8)
Console.WriteLine(myVar2)
' The code produces the following output:
' 3

Пример — знак

В этом примере метод 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

См. также