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


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

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

Замечания

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

.Метод сеток Описание
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:

.Метод сеток Описание Доступно в
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

См. также