Pergunta

Eu tenho este pedaço de VB6 cortado fora de um projeto que estou trabalhando em:

Public Function C_Ln(c As ComplexNumber) As ComplexNumber
    Set C_Ln = toComplex(Log(C_Abs(c)), Atan2(c.Imag, c.Real))
End Function

A função VB6 Log () é a base, e. Eu gostaria de cozinhar versões deste para fazer base-2, base-10 e base-n. Por onde eu começo?

Foi útil?

Solução

Você pode usar o seguinte matemática identidade :

text alt

Em VB seria algo como:

Log10 = Log(X) / Log(10)
Log2 = Log(X) / Log(2)
' ... LogN = Log(X) / Log(N)

Outras dicas

Se você dividir o log natural de x pelo log da base que você quer conseguir obter o resultado desejado, ou seja, (ln x) / (ln n) = y

Consulte aqui para uma explicação

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top