ধরুন আমাদের দুটি সংখ্যা a এবং b আছে। আমাদের এই দুটি সংখ্যার GCD (গরেটেস্ট কমন ডিভাইসর) রিকার্সিভভাবে বের করতে হবে। GCD বের করার জন্য ইউক্লিডিয়ান অ্যালগরিদম ব্যবহার করা হবে।
উদাহরণস্বরূপ, যদি ইনপুট a = 25 এবং b = 45 হয়, তবে আউটপুট হবে 5।
সমাধানের ধাপসমূহ
gcd()ফাংশন ডিফাইন করুন যাa, bনেবে- যদি
a == b, তবেaরিটার্ন করুন - অন্যথায় যদি
a < b, তবেgcd(b, a)রিটার্ন করুন - অন্যথায়
gcd(b, a - b)রিটার্ন করুন
উদাহরণ
নিচের ইমপ্লিমেন্টেশনটি দেখুন ভালো বুঝার জন্য:
def gcd(a, b):
if a == b:
return a
elif a < b:
return gcd(b, a)
else:
return gcd(b, a - b)
a = 25
b = 45
print(gcd(a, b))
ইনপুট
25, 45
আউটপুট
5