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?

È stato utile?

Soluzione

Puoi utilizzare la seguente Identity :

alt text

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

Vedi qui per una spiegazione

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top