RosettaCodeData/Task/Binary-digits/Action-/binary-digits.action

32 lines
350 B
Plaintext

PROC PrintBinary(CARD v)
CHAR ARRAY a(16)
BYTE i=[0]
DO
a(i)=(v&1)+'0
i==+1
v=v RSH 1
UNTIL v=0
OD
DO
i==-1
Put(a(i))
UNTIL i=0
OD
RETURN
PROC Main()
CARD ARRAY data=[0 5 50 9000]
BYTE i
CARD v
FOR i=0 TO 3
DO
v=data(i)
PrintF("Output for %I is ",v)
PrintBinary(v)
PutE()
OD
RETURN