Menu
CoddyTech

Perfect Number

القاسم الحقيقي للعدد n هو قاسم موجب أصغر من n نفسه. العدد الكامل يساوي مجموع قواسمه الحقيقية: 6 = 1 + 2 + 3. يُعطى لك عدد صحيح موجب n. أعد true إذا كان n عددًا كاملًا، وfalse خلاف ذلك.

الدالة

isPerfect(n: integer) → boolean
ninteger
العدد الصحيح الموجب المراد اختباره
تُرجعboolean
صحيح إذا كان n يساوي مجموع قواسمه الحقيقية، وخطأ خلاف ذلك

القيود

  • 1 ≤ n ≤ 108

أمثلة

المدخلات
n = 28
المخرجات
true
الشرح
القواسم الحقيقية للعدد 28 هي 1 و2 و4 و7 و14. مجموعها هو 28، لذا فإن 28 عدد كامل.
challenge icon

سؤال إضافي

كل عدد كامل زوجي يكون على الصورة 2^(p-1) × (2^p-1) حيث يكون 2^p-1 عددًا أوليًا. هل يمكنك سرد جميع الأعداد الكاملة الأصغر من 10^8 باستخدام هذه الصيغة، دون اختبار كل عدد؟

إعادة ضبط الشيفرة
def isPerfect(n):
    # اكتب الكود هنا

اختبار #1

اختبار #2

اختبار #3

وسيط

n = 28

الإخراج المتوقع

true