\START82\ \COMMENT=Program file dated 04/10/96, 18:39 \NAME=QUAD :ClrHome :FnOff :ClrDraw :Split :AxesOff :Text(0,0,"Y=AX\^2\+BX+C") :Prompt A :Prompt B :Prompt C :If A=0 :Then :Disp "NOT QUADRATIC" :Stop :End :\(-)\B\->\D :B\^2\-4AC\->\E :2A\->\F :0\->\G :If E<0 :Then :\(-)\E\->\E :1\->\G :End :Lbl E :Menu("QUADRATIC","ALL ROOTS",A,"DEC ROOTS",B,"VERTEX",C,"QUIT",D) :Lbl A :ClrDraw :Text(0,0,"Y=AX\^2\+BX+C") :If (A=int A)(B=int B)(C=int C)=0 :Then :10A\->\A :10B\->\B :10C\->\C :\(-)\B\->\D :abs (B\^2\-4AC)\->\E :2A\->\F :Goto A :End :2\->\\@\ :1\->\H :Lbl 1 :E/\@\\^2\\->\Z :If \@\\^2\\<=\E :Then :If Z\<>\int Z :Then :\@\+1\->\\@\ :Goto 1 :End :H\@\\->\H :E/\@\\^2\\->\E :Goto 1 :End :If E=0 :Then :0\->\H :1\->\E :End :0\->\L :If E=1 and G=0 :Then :D-H\->\L :D+H\->\D :0\->\H :End :F\->\K :F\->\M :D\->\\@\ :F\->\Z :Lbl 2 :\@\/Z\->\Y :If Y\<>\int Y :Then :\@\-ZiPart Y\->\X :Z\->\\@\ :X\->\Z :Goto 2 :End :D/Z\->\D :F/Z\->\F :If F<0 :Then :\(-)\D\->\D :\(-)\F\->\F :End :H\->\\@\ :K\->\Z :Lbl 3 :\@\/Z\->\Y :If Y\<>\int Y :Then :\@\-ZiPart Y\->\X :Z\->\\@\ :X\->\Z :Goto 3 :End :H/Z\->\H :K/Z\->\K :If K<0 :Then :\(-)\H\->\H :\(-)\K\->\K :End :L\->\\@\ :M\->\Z :Lbl 4 :\@\/Z\->\Y :If Y\<>\int Y :Then :\@\-ZiPart Y\->\X :Z\->\\@\ :X\->\Z :Goto 4 :End :L/Z\->\L :M/Z\->\M :If M<0 :Then :\(-)\L\->\L :\(-)\M\->\M :End :If D\<>\0 or (D=0 and H=0) :Then :If F\<>\1 :Text(6,0,D,"/",F) :If F=1 :Text(6,0,D) :End :If H=0 and D/F\<>\L/M :Then :If M\<>\1 :Text(12,0,L,"/",M) :If M=1 :Text(12,0,L) :End :If H\<>\0 :Then :If K\<>\1 :Text(12,0,"+-",H,"/",K) :If K=1 :Text(12,0,"+-",H) :If G=0 :Text(18,0,"\sqrt\",E) :If G=1 and E=1 :Text(18,0,"I") :If G=1 and E\<>\1 :Text(18,0,"I\sqrt\",E) :End :\(-)\B\->\D :B\^2\-4AC\->\E :2A\->\F :Lbl B :Text(0,59,"ROOTS") :Output(1,12,"(\(-)\B+-") :Output(2,12,"\sqrt\(B\^2\-") :Output(3,12,"4AC))") :Output(4,12,"/2A") :If G=0 :Then :(D+\sqrt\E)/F\->\H :(D-\sqrt\E)/F\->\I :Text(24,0,H) :Text(24,47,I) :End :Disp :Pause :Goto E :Lbl C :ClrDraw :Text(0,0,"Y=AX\^2\+BX+C") :Text(0,57,"VERTEX") :D/F\->\H :AH\^2\+BH+C\->\I :If A>0 :Text(12,0,"OPENS UP") :If A<0 :Text(12,0,"OPENS DOWN") :Text(24,0,H) :Text(24,47,I) :Output(1,12,"\(-)\B/2A") :Output(2,12," ") :Output(3,12,"F(\(-)\B/") :Output(4,12," 2A)") :Pause :Goto E :Lbl D :FullScreen :AxesOn :Stop :COPYRIGHT STEPHEN OSTERMILLER 1996 \STOP82\