Trenly 29 Mar 2016 14:58

```
Lbl A
ClrHome
Menu("QUADRATICS","SOLVER",1,"SQUARE ROOT",4,"EQUATIONS",3,"QUIT",10
Lbl 1
ClrHome
Disp "AX²+BX+C=0
Prompt A,B,C
"AX^2+BX+C"→Y₁
⁻B→Q
2A→R
Q/R→S
AS²+BS+C→V
ClrHome
Disp "VERTEX:",S,V
Pause
(⁻B+√(B²-4AC))⁄(2A→F
(⁻B-√(B²-4AC))⁄(2A→E
Disp "ROOTS:",F,E
Pause
Goto A
Lbl 3
ClrHome
Disp "STANDARD FORM:","AX²+BX+C","VERTEX FORM:","A(X-H)²+K","FACTORED/BINOML:","(M+N)(O+P)","SYMMETRY EQTION:
Output(8,1,"⁻B⁄2A
Pause
Goto A
Lbl 4
ClrHome
Input "√( ):",W
√(W→W
Disp W
W*⁻1→X
Disp X
Pause
Goto A
Lbl 10
ClrHome
DelVar ADelVar BDelVar CDelVar XDelVar QDelVar SDelVar RDelVar VDelVar WStop
```

I used TokenIDE to see the code, and I noticed a few optimizations. Pause can be used the same as Disp, and there was a statement that I simplified by not calculating a value and storing it, just to use that value once. Also, adding the a+bi at the beginning prevents the nonreal answer error. My code comes out to 399 bytes

```
a+bi
Lbl A
ClrHome
Menu("QUADRATICS","SOLVER",1,"SQUARE ROOT",4,"EQUATIONS",3,"QUIT",10
Lbl 1
ClrHome
Disp "AX²+BX+C=0
Prompt A,B,C
"AX^2+BX+C"→Y₁
⁻B/2A→S
AS²+BS+C→V
ClrHome
Pause "VERTEX:",S,V
Pause "ROOTS:",(⁻B+√(B²-4AC))⁄(2A,(⁻B-√(B²-4AC))⁄(2A
Goto A
Lbl 3
ClrHome
Disp "STANDARD FORM:","AX²+BX+C","VERTEX FORM:","A(X-H)²+K","FACTORED/BINOML:","(M+N)(O+P)","SYMMETRY EQTION:
Output(8,1,"⁻B⁄2A
Pause
Goto A
Lbl 4
ClrHome
Input "√( ):",W
√(W→W
Pause W,-W
Goto A
Lbl 10
ClrHome
DelVar ADelVar BDelVar CDelVar SDelVar VDelVar WReturn
```

live the life because the life is good —vivir la vida, porque la vida es buena

Vie la vie que la vie est bonne quod est bonum vitae in vita

lebe das Leben, weil das Leben ist gut —vivere la vita, perché la vita è buona