BigInteger.Log Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Devolve o logaritmo de um número especificado.
Sobrecargas
| Name | Description |
|---|---|
| Log(BigInteger) |
Devolve o logaritmo natural (base |
| Log(BigInteger, Double) |
Devolve o logaritmo de um número especificado numa base especificada. |
Log(BigInteger)
Devolve o logaritmo natural (base e) de um número especificado.
public:
static double Log(System::Numerics::BigInteger value);
public static double Log(System.Numerics.BigInteger value);
static member Log : System.Numerics.BigInteger -> double
Public Shared Function Log (value As BigInteger) As Double
Parâmetros
- value
- BigInteger
O número cujo logaritmo se encontra.
Devoluções
O logaritmo natural (base e) de value, como mostrado na tabela da secção de Observações.
Exceções
O logaritmo natural de value está fora do alcance do Double tipo de dados.
Observações
O value parâmetro é especificado como um número de base 10.
O valor exato de retorno deste método depende do sinal de value, como mostra a tabela seguinte.
Sinal do value parâmetro |
Valor de retorno |
|---|---|
| Positivo | O logaritmo natural de value; isto é, ln value, ou log evalue. |
| Zero | NegativeInfinity. |
| Negativo | NaN. |
Para calcular o logaritmo base 10 de um BigInteger valor, chame-se o Log10 método. Para calcular o logaritmo de um número noutra base, chame-se o Log(BigInteger, Double) método.
Pode encontrar a raiz quadrada de um número chamando o Log método juntamente com o Math.Exp método. Note-se que o resultado é Double.PositiveInfinity se o resultado for maior que Double.MaxValue. O exemplo seguinte calcula a raiz quadrada de cada elemento num array de BigInteger valores.
using System;
using System.Numerics;
public class Example
{
public static void Main()
{
BigInteger[] values = { 2, 100, BigInteger.Pow(1000, 100),
BigInteger.Pow(2, 64) };
foreach (var value in values)
Console.WriteLine("The square root of {0} is {1}", value,
Math.Exp(BigInteger.Log(value) / 2));
}
}
// The example displays the following output:
// The square root of 2 is 1.41421356237309
// The square root of 100 is 10
// The square root of 1000000000000000000000000000000000000000000000000000000000000
// 00000000000000000000000000000000000000000000000000000000000000000000000000000000
// 00000000000000000000000000000000000000000000000000000000000000000000000000000000
// 00000000000000000000000000000000000000000000000000000000000000000000000000000000
// is 9.99999999999988E+149
// The square root of 18446744073709551616 is 4294967296
open System
open System.Numerics
let values = [| 2I; 100I; BigInteger.Pow(1000I, 100); BigInteger.Pow(2I, 64) |]
for value in values do
printfn $"The square root of {value} is {Math.Exp(BigInteger.Log(value) / 2.)}"
// The example displays the following output:
// The square root of 2 is 1.41421356237309
// The square root of 100 is 10
// The square root of 1000000000000000000000000000000000000000000000000000000000000
// 00000000000000000000000000000000000000000000000000000000000000000000000000000000
// 00000000000000000000000000000000000000000000000000000000000000000000000000000000
// 00000000000000000000000000000000000000000000000000000000000000000000000000000000
// is 9.99999999999988E+149
// The square root of 18446744073709551616 is 4294967296
Imports System.Numerics
Module Example
Public Sub Main()
Dim values() As BigInteger = { 2, 100, BigInteger.Pow(1000, 100),
BigInteger.Pow(2, 64) }
For Each value In values
Console.WriteLine("The square root of {0} is {1}", value,
Math.Exp(BigInteger.Log(value) / 2))
Next
End Sub
End Module
' The example displays the following output:
' The square root of 2 is 1.41421356237309
' The square root of 100 is 10
' The square root of 1000000000000000000000000000000000000000000000000000000000000
' 00000000000000000000000000000000000000000000000000000000000000000000000000000000
' 00000000000000000000000000000000000000000000000000000000000000000000000000000000
' 00000000000000000000000000000000000000000000000000000000000000000000000000000000
' is 9.99999999999988E+149
' The square root of 18446744073709551616 is 4294967296
Este método corresponde ao Math.Log(Double) método para os tipos numéricos primitivos.
Ver também
Aplica-se a
Log(BigInteger, Double)
Devolve o logaritmo de um número especificado numa base especificada.
public:
static double Log(System::Numerics::BigInteger value, double baseValue);
public static double Log(System.Numerics.BigInteger value, double baseValue);
static member Log : System.Numerics.BigInteger * double -> double
Public Shared Function Log (value As BigInteger, baseValue As Double) As Double
Parâmetros
- value
- BigInteger
Um número cujo logaritmo se encontra.
- baseValue
- Double
A base do logaritmo.
Devoluções
O logaritmo base baseValue de value, como mostrado na tabela na secção de Observações.
Exceções
O logaritmo de value está fora do alcance do Double tipo de dados.
Observações
Os value parâmetros e baseValue são especificados como números de base 10.
O valor preciso de retorno do método depende do sinal de value e do sinal e valor de baseValue, como mostra a tabela seguinte.
value Parâmetro |
baseValue Parâmetro |
Valor de retorno |
|---|---|---|
value
> 0 |
(0 <baseValue< 1) -ou-(baseValue> 1) |
logbaseValue(value) |
value
< 0 |
(qualquer valor) | Double.NaN |
| (qualquer valor) |
baseValue
< 0 |
Double.NaN |
value != 1 |
baseValue = 0 |
Double.NaN |
value != 1 |
baseValue = Double.PositiveInfinity |
Double.NaN |
| (qualquer valor) | baseValue = Double.NaN |
Double.NaN |
| (qualquer valor) |
baseValue = 1 |
Double.NaN |
value = 0 |
0 <baseValue< 1 |
Double.PositiveInfinity |
value = 0 |
baseValue
> 1 |
Double.PositiveInfinity |
value = 1 |
baseValue = 0 |
0 |
value = 1 |
baseValue = Double.PositiveInfinity |
0 |
Para calcular o logaritmo base 10 de um BigInteger valor, chame-se o Log10 método. Para calcular o logaritmo natural de um número, chame-se o Log(BigInteger) método.
Este método corresponde ao Math.Log método para os tipos numéricos primitivos.