GRADES:  A grade database.  Keeps track of assignments,
letter grades, and percentages in classes.  When finished entering 
data, enter 'X' as points received to halt entry.  Displays a graph
of average versus time in the class.  Uses subroutine /theta/RANGE.

\COMMENT=Program file dated 03/12/97, 18:09
\NAME=GRADES
\FILE=C:\BRYAN\TI\UPLOAD\GRADES.82P
:ClrHome
:0\->\A:ClrList \L1\,\L2\,\L3\,\L4\:1\->\P:0\->\J
:prgm\@\RANGE
:Lbl 4
:Menu("     GRADES     ","LOAD RECORD",8,"NEW RECORD",9
:Lbl 8
:log \pi\\->\\@\
:0\->\A:0\->\B:prgmPICDRIVE:0\->\\@\
:If D=\(-)\1:Goto 4
:C\->\K
:D\->\V:0\->\W
:ClrHome
:Output(1,1,"LOADING
:1\->\T:9\->\U:1\->\P
:Lbl I
:Output(T,U,".
:U+1\->\U:If U=17:Then:1\->\U:T+1\->\T:End
:If T=9:Then:ClrHome:1\->\T:End
:0\->\R:0\->\S
:For(B,8,0,\(-)\1
:pxl-Test(V,W)2^B+R\->\R
:W+1\->\W:If W=95:Then:0\->\W:V+1\->\V:End
:pxl-Test(V,W)2^B+S\->\S
:W+1\->\W:If W=95:Then:0\->\W:V+1\->\V:End
:End
:V\->\J
:If R=0:Goto J
:R\->\\L1\(P
:S\->\\L2\(P
:P+1\->\P
:Goto I
:Lbl J
:If P=1:Goto K
:\L1\-1\->\\L1\:\L2\-1\->\\L2\
:Lbl K
:P\->\Q
:ClrHome
:Disp "INPUT POINTS","RECEIVED, THEN","POINTS POSSIBLE","WHEN FINISHED,\#\
","ENTER [X].","
:rand\->\X
:Lbl L
:Input "RECEIVED? ",I
:If I=X:Goto M
:If I>510:Goto Z
:I\->\\L1\(P
:Input "POSSIBLE? ",I
:If I>510:Goto Z
:I\->\\L2\(P
:P+1\->\P
:Goto L
:Lbl M
:ClrHome
:sum \L1\\->\X:sum \L2\\->\Y
:Output(2,3,round(100X/Y,2
:Output(2,9,"PERCENT
:Output(4,5,X
:Output(4,9,"/
:Output(4,10,Y
:X/Y\->\I
:Output(6,1,"LETTER GRADE:
:Output(6,15,"F
:If I\>=\.6:Output(6,15,"D
:If I\>=\.7:Output(6,15,"C
:If I\>=\.8:Output(6,15,"B
:If I\>=\.9:Output(6,15,"A
:10fPart 10I\->\L
:If I<.53 or L<3:Output(6,16,"-
:If L>7 or I\>=\1 and I>.53:Output(6,16,"+
:Pause :If P=2:Goto 7
:0\->\E:0\->\F
:For(B,1,dim \L1\
:B\->\\L3\(B
:E+\L1\(B)\->\E
:F+\L2\(B)\->\F
:100E/F\->\\L4\(B
:End
:Plot1(xyLine,\L3\,\L4\,\box icon\
:ZoomStat
:For(B,5,10
:Horizontal 10B
:End
:CoordOn
:Trace
:Lbl 7
:\L1\+1\->\\L1\:\L2\+1\->\\L2\
:PlotsOff 
:If J\<>\0:Then
:J\->\V:ClrDraw
:W-18\->\W:If W<0:Then:V-1\->\V:W+95\->\W:End
:If K=1:RecallPic Pic1
:If K=2:RecallPic Pic2
:If K=3:RecallPic Pic3
:If K=4:RecallPic Pic4
:If K=5:RecallPic Pic5
:If K=6:RecallPic Pic6
:Else
:log \pi\\->\\@\:21\->\A:0\->\B:prgmPICDRIVE:D\->\V:0\->\W:0\->\\@\
:End
:Lbl 6
:For(B,Q,dim \L1\
:\L1\(B)\->\E
:\L2\(B)\->\F
:For(I,8,0,\(-)\1
:2^I\->\G
:If E\>=\G:Then:Pxl-On(V,W):E-G\->\E:End
:W+1\->\W:If W=95:Then:0\->\W:V+1\->\V:End
:If F\>=\G:Then:Pxl-On(V,W):F-G\->\F:End
:W+1\->\W:If W=95:Then:0\->\W:V+1\->\V:End
:End
:End
:\(-)\1\->\A:prgmPICDRIVE
:ClrHome
:Disp "YOUR RECORDS ARE","UPDATED.","","   GRADES FOR","   THE TI-82","\#\
      1996"
:Output(8,15,"bc
:ClrList \L1\,\L2\,\L3\,\L4\
:Goto Y
:Lbl Z
:ClrHome
:Disp "DUE TO SIZE","LIMITATIONS,","NUMBERS LARGER","THAN 510 CAN NOT",\#\
"BE STORED."
:Lbl Y
:Return
:Lbl 9
:1\->\P
:Goto K
\STOP82\
\START82\
\COMMENT=Program file dated 03/12/97, 18:12
\NAME=\@\RANGE
\FILE=C:\BRYAN\TI\UPLOAD\ZRANGE.82P
:FullScreen
:FnOff :PlotsOff :AxesOff:Func:0\->\Xmin:94\->\Xmax:0\->\Ymin:62\->\Yma\#\
x
\STOP82\

