31 lines
934 B
Plaintext
31 lines
934 B
Plaintext
Module CheckFirst {
|
|
RAD = lambda -> number/180*pi
|
|
ASIN = lambda RAD -> {
|
|
Read x : x=Round(x,10)
|
|
If x>=0 and X<1 Then {
|
|
=RAD(abs(2*Round(ATN(x/(1+SQRT(1-x**2))))))
|
|
} Else.if x==1 Then {
|
|
=RAD(90)
|
|
} Else error "asin exit limit"
|
|
}
|
|
ACOS=lambda ASIN (x) -> PI/2 - ASIN(x)
|
|
POW3 = Lambda ->number**3
|
|
POW3INV =Lambda ->number**(1/3)
|
|
COSRAD =lambda ->Cos(number*180/pi)
|
|
SINRAD=lambda ->Sin(number*180/pi)
|
|
Composed=lambda (f1, f2) -> {
|
|
=lambda f1, f2 (x)->{
|
|
=f1(f2(x))
|
|
}
|
|
}
|
|
Dim Base 0, A(3), B(3), C(3)
|
|
A(0)=ACOS, ASIN, POW3INV
|
|
B(0)=COSRAD, SINRAD, POW3
|
|
C(0)=Composed(ACOS, COSRAD), Composed(ASIN, SINRAD), Composed(POW3INV, POW3)
|
|
Print $("0.00")
|
|
For i=0 To 2 {
|
|
Print A(i)(B(i)(.5)), C(i)(.5)
|
|
}
|
|
}
|
|
CheckFirst
|