" <-APL2-------------------- sam287.txt ----------------------------> F`1'sine of ' t ' degrees = ' (1OO(t#30)%180) F`1'cosine of ' t ' degrees = ' (2OO(t#45)%180) F`1'arcsine of ' t ' = ' ((-1Ot#.5)X180%O1) ' degrees' F`1'arctan of ' t ' = ' ((-3Ot#1)X180%O1) ' degrees' " <-----------------------------------------------------------------> Gz#k circle r;a;b;c;d;e;f b#arctanh arccosh arcsinh arctan arccos arcsin sin cos tan sinh cosh tanh c#1 2 3 5 6 7 9 10 11 13 14 15 z#I0 " Initialize result. loop:$doneXI0=R,k a#1Yk k#1Uk $(c=a+8)/b z#'bad selection = ',Fk $0 arctanh: z#z,`ZaOr " -7 $loop arccosh: z#z,`ZaOr " -6 $loop arcsinh: z#z,`ZaOr " -5 $loop arctan: d#aOr " -3 (e/,d)#(O1)+(e#1>9O,d)/,d " Add pitimes(1) where real(d) < 1. z#z,`Zd $loop arccos: d#aOr " -2 (e/,d)#(O2)+(e#0K11O,r)/,d " e is 1 where imag(r) >= 0. " if (*(r+1)>0) " *d+=pitimes(2); (f/,d)#_(f#~e)/,d " else { *d=-*d; *(d+1)=-*(d+1); } z#z,`Zd $loop arcsin: d#aOr " -1 (e/,d)#(O1)_(e#0K11O,r)/,d " e is 1 where imag(r) -ge 0. " if (*(r+1)>0) { " *d=pitimes(1)-*d; " *(d+1)=-*(d+1); " } (f/,d)#(O2)+(f#(~e)&0>9O,r)/,d " f is 1 where imag(r)<0 && real(r)<0. " if (*r<0 && *(r+1)<0) " *d+=pitimes(2); z#z,`Zd $loop sin: z#z,`ZaOr " 1 $loop cos: z#z,`ZaOr " 2 $loop tan: z#z,`ZaOr " 3 $loop sinh: z#z,`ZaOr " 5 $loop cosh: z#z,`ZaOr " 6 $loop tanh: z#z,`ZaOr " 7 $loop done:$I0 G Lpp#4 c#Rn#'sin' 'cos' 'tan' 'sinh' 'cosh' 'tanh' b# 1 2 3 5 6 7 (n,(c,(Ru))Ru),[2]((c,e#Rt)Ru#F`1t),F`1a#bJ.Ow#tJ.+0j1Xt#I5 ((m#'a',`1n),(c,(Ru))Ru),[2]((c,Rt)Ru),F`1f#((Ra)R`X(`Ze e)J.R_b)Oa a[3;;] f[3;;] Lfx 'z#atan r' 'z#-3Or' atan a[3;;] -3 circle a[3;;] Lex 'demo' Gz#m demo n;s;t;u;v;w;x;y;a;b;c v#s,u#(a#n[1])Os#t 1R(m_+/(St%2)Xy)+x#(It#n[2])Xy#1%n[3] z#v,w,(w+O1),(w#(_a)Ou)+O2 c#(F_a),'O',b#(Fa),'Oin' z#'in' b c ('(',c,')+O1') ('(',c,')+O2'),[1]z G (0j1_8XO1%4) demo 1,6,10 (0j1_7XO1%4) demo 1,6,10 (0j1_6XO1%4) demo 1,6,10 (0j1_5XO1%4) demo 1,6,10 (0j1_4XO1%4) demo 1,6,10 (0j1_3XO1%4) demo 1,6,10 (0j1_2XO1%4) demo 1,6,10 (0j1_1XO1%4) demo 1,6,10 (0j1+0XO1%4) demo 1,6,10 (0j1+1XO1%4) demo 1,6,10 (0j1+2XO1%4) demo 1,6,10 (0j1+3XO1%4) demo 1,6,10 (0j1+4XO1%4) demo 1,6,10 (0j1+5XO1%4) demo 1,6,10 (0j1+6XO1%4) demo 1,6,10 (0j1+7XO1%4) demo 1,6,10 (0j1+8XO1%4) demo 1,6,10 (0j1_8XO1%4) demo 3,6,10 (0j1_7XO1%4) demo 3,6,10 (0j1_6XO1%4) demo 3,6,10 (0j1_5XO1%4) demo 3,6,10 (0j1_4XO1%4) demo 3,6,10 (0j1_3XO1%4) demo 3,6,10 (0j1_2XO1%4) demo 3,6,10 (0j1_1XO1%4) demo 3,6,10 (0j1+0XO1%4) demo 3,6,10 (0j1+1XO1%4) demo 3,6,10 (0j1+2XO1%4) demo 3,6,10 (0j1+3XO1%4) demo 3,6,10 (0j1+4XO1%4) demo 3,6,10 (0j1+5XO1%4) demo 3,6,10 (0j1+6XO1%4) demo 3,6,10 (0j1+7XO1%4) demo 3,6,10 (0j1+8XO1%4) demo 3,6,10 )off