গ্রে কোড থেকে বাইনারি কোডে রূপান্তর করতে একটি হেল্পার ফাংশন flip_num এবং মূল ফাংশন gray_to_binary ব্যবহার করা হয়।
উদাহরণ
def flip_num(bit):
return '1' if bit == '0' else '0'
def gray_to_binary(gray):
binary = gray[0] # প্রথম বিট একই থাকে
for i in range(1, len(gray)):
if gray[i] == '0':
binary += binary[i - 1] # পिछের বিট কপি
else:
binary += flip_num(binary[i - 1]) # পिछের বিট ফ্লিপ
return binary
gray_code = "01101001"
print("গ্রে কোড:", gray_code)
print("বাইনারি কোড:", gray_to_binary(gray_code))
আউটপুট
গ্রে কোড: 01101001 বাইনারি কোড: 01001110
ব্যাখ্যা
flip_numফাংশন '0' কে '1' এবং '1' কে '0' এ রূপান্তর করে।gray_to_binaryফাংশন গ্রে কোডের প্রথম বিট বাইনারিতে কপি করে।পরবর্তী বিটগুলোতে: যদি গ্রে বিট '0' হয়, বাইনারি বিট অপরিবর্তিত থাকে; '1' হলে ফ্লিপ হয়।
লুপ চালিয়ে পুরো স্ট্রিং প্রসেস করা হয়।