Menu
CoddyTech
flag Ar iconالعربيةdown icon

Greatest Common Divisor

لديك عددان صحيحان موجبان a وb. أعد القاسم المشترك الأكبر لهما: أكبر عدد صحيح يقسم كليهما دون باقٍ.

على سبيل المثال، الأعداد التي تقسم كلًا من 8 و12 هي 1 و2 و4، لذا فالإجابة هي 4.

الدالة

gcd(a: integer, b: integer) → integer
ainteger
أول عدد صحيح موجب
binteger
العدد الصحيح الموجب الثاني
تُرجعinteger
أكبر عدد صحيح يقسم كلًا من a وb

القيود

  • 1 ≤ a ≤ 109
  • 1 ≤ b ≤ 109

أمثلة

المدخلات
a = 12b = 18
المخرجات
6
الشرح
قواسم 12 هي 1 و2 و3 و4 و6 و12؛ وقواسم 18 هي 1 و2 و3 و6 و9 و18. أكبر عدد في كلتا القائمتين هو 6.

lock icon+14 اختبارات مخفية عند الإرسال

challenge icon

سؤال إضافي

هل يمكنك توسيع خوارزمية إقليدس بحيث تُرجع أيضًا عددين صحيحين x وy بحيث يكون a × x + b × y = gcd(a, b)؟

إعادة ضبط الشيفرة
def gcd(a, b):
    # اكتب الشيفرة هنا
حالات الاختبار

الحالة 1

الحالة 2

الحالة 3

المدخلات

a = 12
b = 18

المتوقع

6