Come calcolare il registro di un numero complesso su una base diversa da 'e'?
-
20-08-2019 - |
Domanda
Ho questo frammento di VB6 tagliato fuori da un progetto a cui sto lavorando:
Public Function C_Ln(c As ComplexNumber) As ComplexNumber
Set C_Ln = toComplex(Log(C_Abs(c)), Atan2(c.Imag, c.Real))
End Function
La funzione Log () VB6 è base-e. Mi piacerebbe cucinare versioni di questo per fare base-2, base-10 e base-n. Da dove comincio?
Soluzione
Puoi utilizzare la seguente Identity :
In VB sarebbe qualcosa del tipo:
Log10 = Log(X) / Log(10)
Log2 = Log(X) / Log(2)
' ... LogN = Log(X) / Log(N)
Altri suggerimenti
Se si divide il log naturale di x per il log della base che si desidera ottenere, si ottiene il risultato desiderato, ovvero (ln x) / (ln n) = y
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow