На бейсике "раскидывание" на биты, однобайтового десятичного значения, можно организовать в виде подпрограммы (строки 2 и 30 служат для ввода и вывода значения):
Можно организовать программу несколько иначе (отказаться от массива). Данный вариант показывает общий принцип, что это можно реализовать довольно коротко и просто.Код:2 INPUT n ... 8 DIM b(8) 10 IF n>127 THEN LET n=n-128: LET b(8)=1 12 IF n>63 THEN LET n=n-64: LET b(7)=1 14 IF n>31 THEN LET n=n-32: LET b(6)=1 16 IF n>15 THEN LET n=n-16: LET b(5)=1 15 IF n>7 THEN LET n=n-8: LET b(4)=1 20 IF n>3 THEN LET n=n-4: LET b(3)=1 22 IF n>1 THEN LET n=n-2: LET b(2)=1 24 LET b(1)=n ... 30 FOR i =1 TO 8: PRINT AТ 0, i; b(i): NEXT i
----
В отличии от "циклопической" программы из книжки: "Как написать игру..."
Код:10 DIM J(5) 20 LET JOY=IN 31 30 FOR N=1 TO 5 40 LET JOY=J0Y/2 50 LET J(N)=(JOY<>INT JOY): LET JOY=INT JOY 60 NEXT N 70 PRINT AT 0,0; 80 FOR N=5 TO 1 STEP -1 90 PRINT J(N); 100 NEXT N 110 GO TO 20





Ответить с цитированием