|
inv(x)=tan(x)-x! V' @0 B/ c2 B- Z! f0 f+ D
逆函數(shù)可以 用表查 , 或是用牛頓法 - G6 \. `% M, m/ `
: m% Z: I2 n( S[vb6/vba] Office excel also with this moudle * q8 }* P4 U# e! k T/ p$ E, h- @5 d
Public Function Inverse_inv(value As Variant)
7 v( |: B: m7 o! K4 h2 a% B Dim ape As Double0 @2 x. }. c- {( `$ r6 g
Dim pe0 As Double2 v$ E+ j( v* Q: F
Dim pe1 As Double
3 v; l( K5 M" _ ape = (3 * value) ^ (1 / 3)
( m; F3 B O# ?/ M# k# @; g+ T Do s( z8 Q6 Z8 v9 g' y) q
If ape >= 1000000000# Then ape = PI / 2: Exit Do
: n A1 {" ?( A, q- J& T" Q. d; p) g pe0 = ape
, Y, Y/ W; b; W3 d) I pe1 = ape + (value + ape - Tan(ape)) / (Tan(ape) ^ 2)0 G, x. x# V* ~8 U% {4 n6 h
ape = pe1
- b9 [- k& \7 q- v% W8 @ Loop Until Abs(pe1 - pe0) <= 0.0000001
) M9 f9 W1 l& n( R Inverse_inv = ape6 D$ T4 W; X( g0 k7 N0 S
End Function |
|