Tuesday, 14 February 2012

Program listings for BBC Basic

   10 REM A PROGRAM TO GUESS RANDOM SHAPES AND ARRIVE AT AN E.S.P. RATING
   20 CORRECT = 0
   30 GUESS=0
   40 TRIANGLE = 0
   50 CIRC = 0
   60 SQUARE = 0
   70 OBLONG = 0
   80 TRIANGLECORRECT = 0
   90 CIRCCORRECT = 0
  100 SQUARECORRECT = 0
  110 OBLONGCORRECT = 0
  120 PRINT"THIS IS A PROGRAM TO GUESS RANDOM SHAPES."
  130 REPEAT
  140   CLS
  150   SHAPE = RND(4)
  160   GUESS = GUESS + 1
  170   INPUT"ENTER A NUMBER, 1 TRIANGLE, 2 CIRCLE, 3 SQUARE, 4 OBLONG.",NUMBER
  180   IF NUMBER = SHAPE PRINT"CORRECT." : CORRECT = CORRECT +1 ELSE PRINT"INCORRECT."
  190   IF NUMBER = SHAPE AND NUMBER = 1 THEN TRIANGLECORRECT = TRIANGLECORRECT + 1
  200   IF NUMBER = SHAPE AND NUMBER = 2 THEN CIRCCORRECT = CIRCCORRECT + 1
  210   IF NUMBER = SHAPE AND NUMBER = 3 THEN SQUARECORRECT = SQUARECORRECT + 1
  220   IF NUMBER = SHAPE AND NUMBER = 4 THEN OBLONGCORRECT = OBLONGCORRECT + 1
  230   PRINT CORRECT, " OUT OF "; GUESS
  240   IF SHAPE = 1  PROCTRIANGLE : TRIANGLE = TRIANGLE + 1
  250   IF SHAPE = 2 PROCCIRCLE : CIRC = CIRC + 1
  260   IF SHAPE = 3 PROCSQUARE : SQUARE = SQUARE + 1
  270   IF SHAPE = 4 PROCOBLONG : OBLONG = OBLONG + 1
  280   PRINT"PRESS ANY KEY TO CONTINUE."
  290   TEMP = GET
  300   INPUT"CONTINUE Y/y, N/n ",REPLY$
  310   IF REPLY$="y" OR REPLY$="Y" OR REPLY$="n" OR REPLY$="N" GOTO 320 ELSE GOTO 300
  320 UNTIL REPLY$="n" OR REPLY$="N"
  330 PROCDISPLAYRESULTS
  340 END
  350 DEF PROCTRIANGLE
  360 GCOL 0,1
  370 MOVE 100,600
  380 DRAW 200,700
  390 DRAW 300, 600
  400 DRAW 100,600
  410 ENDPROC
  420 DEF PROCCIRCLE
  430 GCOL 0,1
  440 MOVE 200, 600
  450 PLOT  145, 0,100
  460 ENDPROC
  470 DEF PROCSQUARE
  480 GCOL 0,1
  490 MOVE 100, 600
  500 DRAW 100, 800
  510 DRAW 300, 800
  520 DRAW 300, 600
  530 DRAW 100, 600
  540 ENDPROC
  550 DEF PROCOBLONG
  560 GCOL 0,1
  570 MOVE 100, 600
  580 DRAW 100, 800
  590 DRAW 500, 800
  600 DRAW 500, 600
  610 DRAW 100, 600
  620 ENDPROC
  630 DEF PROCDISPLAYRESULTS
  640 CLS
  650 PRINT"NUMBER OF TRIANGLES ";TRIANGLE
  660 PRINT
  670 PRINT"AVERAGE PROBALITY OF TRIANGLE "; TRIANGLE/GUESS
  680 PRINT
  690 PRINT"YOUR PROBABILITY OF A TRIANGLE ";TRIANGLECORRECT/GUESS
  700 PRINT
  710 PRINT"NUMBER OF CICLES ";CIRC
  720 PRINT
  730 PRINT"AVERAGE PROBABILITY OF CIRCLE ";CIRC/GUESS
  740 PRINT
  750 PRINT"YOUR PROBILITY OF A CIRCLE ";CIRCCORRECT/GUESS
  760 PRINT
  770 PRINT"NUMBER OF SQUARES ";SQUARE
  780 PRINT
  790 PRINT "AVERAGE PROBABILITY OF SQUARE "; SQUARE/GUESS
  800 PRINT
  810 PRINT"YOUR PROBABILITY OF A SQUARE ";SQUARECORRECT/GUESS
  820 PRINT
  830 PRINT"NUMBER OF OBLONGS ";OBLONG
  840 PRINT
  850 PRINT"AVERAGE PROBABILITY OF OBLONG ";OBLONG/GUESS
  860 PRINT
  870 PRINT"YOUR PROBABILITY OF AN OBLONG ";OBLONGCORRECT/GUESS
  880 PRINT
  890 PRINT"EXPECTED NUMBER OF EACH SHAPE "; 0.25*GUESS
  900 PRINT
  910 PRINT"NUMBER OF GUESSES "; GUESS
  920 PRINT
  930 PRINT"NUMBER CORRECT ";CORRECT
  940 PRINT
  950 PRINT"YOUR AVERAGE PROBABILITY OF GUESSING RIGHT SHAPE ";CORRECT /GUESS
  960 ENDPROC

No comments:

Post a Comment