In: Computer Science
PROGRAM :
import random
import RPi.GPIO as GPIO # import RPi.GPIO module
GPIO.setmode(GPIO.BCM) # choose BCM or BOARD
GPIO.setup(12, GPIO.OUT) # set a port/pin as an output
GPIO.setup(16, GPIO.OUT) # set a port/pin as an output
GPIO.setup(20, GPIO.OUT) # set a port/pin as an output
GPIO.setup(21, GPIO.OUT) # set a port/pin as an output
GPIO.setup(25, GPIO.IN) # set a port/pin as an Input
GPIO.setup(8, GPIO.IN) # set a port/pin as an Input
GPIO.setup(7, GPIO.IN) # set a port/pin as an Input
GPIO.setup(26, GPIO.IN) # set a port/pin as an Input
GPIO.setup(19, GPIO.IN) # set a port/pin as an Input
GPIO.setup(13, GPIO.IN) # set a port/pin as an Input
GPIO.setup(6, GPIO.IN) # set a port/pin as an Input
GPIO.setup(5, GPIO.IN) # set a port/pin as an Input
GPIO.setup(11, GPIO.IN) # set a port/pin as an Input
GPIO.setup(9, GPIO.IN) # set a port/pin as an Input
DEC=random.randint(0,9)
binary= [int(i) for i in bin(DEC)[2:]] # Decimal to binary number
conversion
while(len(binary)<4): #adding bit 0 in left to make it 4
bit
binary.insert(0,0)
lst=[12,16,20,21]
j=0
for i in binary: #Loading Binary value to DEC input pins
if i==0:
GPIO.output(lst[j], 0) # set port/pin value to 0/GPIO.LOW/False
else:
GPIO.output(lst[j], 1) # set port/pin value to 1/GPIO.HIGH/True
print("The Decimal outputs are
(25,8,7,26,19,13,6,5,11,9)respctively ")
print GPIO.input(25)
print GPIO.input(8)
print GPIO.input(7)
print GPIO.input(26)
print GPIO.input(19)
print GPIO.input(13)
print GPIO.input(6)
print GPIO.input(5)
print GPIO.input(11)
print GPIO.input(9)
Note :This programm use gpio pins hence i have imported raspberry pi 's GPIO library as a model but you can import library of your board if yor not using raspberry pi.