বাইনারি কোডকে গ্রে কোডে রূপান্তর করার জন্য XOR অপারেশন ব্যবহার করা হয়। একটি ফাংশন ডিফাইন করে এই রূপান্তরটি সহজে করা যায়।
উদাহরণ
def binary_to_gray(n):
n = int(n, 2) # বাইনারি স্ট্রিংকে ইন্টিজারে রূপান্তর
n ^= (n >> 1) # XOR অপারেশন: n XOR (n >> 1)
return bin(n)[2:] # আবার বাইনারি স্ট্রিংয়ে রূপান্তর (0b প্রিফিক্স বাদ দিয়ে)
gray_input = input('বাইনারি সংখ্যা দিন: ')
gray_code = binary_to_gray(gray_input)
print('গ্রে কোডওয়ার্ড:', gray_code)
আউটপুট
বাইনারি সংখ্যা দিন: 101100110 গ্রে কোডওয়ার্ড: 111010101
ব্যাখ্যা
binary_to_grayফাংশনটি বাইনারি স্ট্রিং প্যারামিটার হিসেবে গ্রহণ করে।এটি ইন্টিজারে রূপান্তর করে
n ^= (n >> 1)ফর্মুলায় XOR অপারেশন সম্পাদন করে।ফলাফলটি আবার বাইনারি স্ট্রিংয়ে রূপান্তর করে রিটার্ন করে।
ব্যবহারকারীর ইনপুট নিয়ে ফাংশন কল করা হয় এবং ফলাফল প্রিন্ট করা হয়।