These are the programs I use on my TI-81 graphing calculator. The name of the program specifies whether you want to know the angle or the side.

Prgm1:XISANGLE
Disp "KNOWN IS"
Disp "(1) OPP ANGLE, OPP SIDE? (2) ADJ SIDE, HYP? (3) OPP SIDE, HYP?
Input Z
If Z=1
Goto A
If Z=2
Goto B
If Z=3
Goto C
End

Lbl A
Disp "SIDE OPP ANGLE X?"
Input A
Disp "ANGLE ADJ ANGLE X?"
Input E
(90-E)->D
(A/(sinD))->C
(C2-A2)->G
(sqrtG)->B
Disp "ANGLE X EQUATION IS"
Disp "90-"
Disp E
Disp "="
Disp D
Pause
Disp "THE HPOTENEUSE EQUATION IS"
Disp A
Disp "/sin"
Disp D
Disp "="
Disp C
Pause
Disp "SIDE ADJ ANGLE X EQUATION IS"
Disp "sqrt"
Disp G
Disp "="
Disp B
Goto D
End

Lbl B
Disp "SIDE ADJ ANGLE X?"
Input B
Disp "HYPOTENEUSE?"
Input C
(C2-B2)->G
(sqrtG)->A
(sin-1 (A/C))->D
(90-D)->E
Disp "ANGLE X EQUATION IS"
(A/C)->O
Disp "sin-1"
Disp O
Disp "="
Disp D
Pause
Disp "SIDE OPP ANGLE X IS"
Disp "sqrt"
Disp G
Disp "="
Disp A
Pause
Disp "OTHER ANGLE EQUATION IS"
Disp "90-"
Disp D
Disp "="
Disp E
Goto D
End

Lbl C
Disp "OPP SIDE IS?"
Input A
Disp "HPOTENEUSE"
Input C
(C2-A2)->G
(sqrtG)->B
(sin-1 (A/C))->D
(90-D)->E
Disp "ANGLE X EQUATION IS"
Disp "sin-1"
(A/C)->T
Disp T
Disp "="
Disp D
Pause
Disp "OTHER ANGLE EQUATION IS"
Disp "90-"
Disp D
Disp "="
Disp E
Pause
Disp "ADJ SIDE EQUATION IS"
Disp "sqrt"
Disp G
Disp "="
Disp B
Goto D
End

Lbl D
Pause
(A+B+C)->O
(O/2)->S
(S-A)->J
(S-B)->L
(S-C)->M
(sqrt(SJLM))->K
Disp "AREA EQUATION IS"
Disp O
Disp "/2 == "
Disp S
Disp "sqrt("
Disp S
Pause
Disp "("
Disp J
Disp "times"
Disp L
Disp "times"
Disp M 
Pause
Disp ") =="
Disp K
End