! Contest 3 Intermediate

! By Kahl Orr

!

! Conrad Weiser HS

 

DIM bin(12)

 

FOR i = 1 to 12

    LET bin(i) = 4

NEXT i

 

LET turn = 1

 

LET debug = 0

 

FOR q = 1 to 5

 

    INPUT PROMPT "INPUT "&str$(q)&": ": direc$,move1,move2$

 

    IF turn=1 THEN

 

       IF direc$ = "R" THEN

 

          LET j=move1

          LET count=bin(move1)+2

          DO

 

             IF j = 6 AND count > 0 THEN

                LET ma = ma+1

                LET count=count-2

             ELSE

                LET count=count-1

             END IF

 

             LET bin(j)=bin(j)+1

 

             LET j=j+1

             IF j=13 THEN LET j = 1

 

          LOOP UNTIL count <= 0

          LET bin(move1) = 0

 

       ELSE IF direc$ = "L" THEN

 

          LET j=move1-1

          LET count=bin(move1)

          DO

 

             IF j = 7 AND count > 0 THEN

                LET ma = ma+1

                LET count=count-2

             ELSE

                LET count=count-1

             END IF

 

             LET bin(j)=bin(j)+1

 

             LET j=j-1

             IF j=0 THEN LET j = 12

 

          LOOP UNTIL count <= 0

          LET bin(move1) = 0

 

       END IF

 

       LET turn = 2

 

    ELSE IF turn = 2 THEN

 

       IF direc$ = "R" THEN

 

          LET j=move1

          LET count=bin(move1)+2

          DO

 

             IF j = 12 AND count > 0 THEN

                LET mb = mb+1

                LET count=count-2

             ELSE

                LET count=count-1

             END IF

 

             LET bin(j)=bin(j)+1

 

             LET j=j+1

             IF j=13 THEN LET j = 1

 

          LOOP UNTIL count <= 0

          LET bin(move1) = 0

 

       ELSE IF direc$ = "L" THEN

 

          LET j=move1-1

          LET count=bin(move1)

          DO

 

             IF j = 1 AND count > 0 THEN

                LET mb = mb+1

                LET count=count-2

             ELSE

                LET count=count-1

             END IF

 

             LET bin(j)=bin(j)+1

 

             LET j=j-1

             IF j=0 THEN LET j = 12

 

 

          LOOP UNTIL count <= 0

          LET bin(move1) = 0

 

       END IF

 

       LET turn = 1

 

    END IF

 

    PRINT "OUTPUT ";str$(q);":";

    IF move2$ = "A" THEN

       PRINT ma

    ELSE IF move2$ = "B" THEN

       PRINT mb

    ELSE

       PRINT bin(val(move2$))

    END IF

    PRINT

 

 

    IF debug =  1 THEN

       FOR i = 1 to 12

           PRINT "bin(";i;") = ";bin(i)

       NEXT i

       PRINT "M A:";ma

       PRINT "M B:";mb

    END IF

 

NEXT q

 

END