بکندباز

در این چالش، باید بررسی کنید که آیا یک عدد به طور دقیق بر ترکیبی از ارقام خود بخش‌پذیر است یا خیر. سه شرط ممکن برای آزمایش وجود دارد:

  1. عدد داده‌شده به طور دقیق بر هر یک از ارقام خود (به جز صفر) بخش‌پذیر باشد.
  2. عدد داده‌شده به طور دقیق بر مجموع ارقام خود بخش‌پذیر باشد.
  3. عدد داده‌شده به طور دقیق بر حاصل‌ضرب ارقام خود بخش‌پذیر باشد.

با توجه به یک عدد صحیح n، تابعی پیاده‌سازی کنید که خروجی زیر را برگرداند:

  • اگر همه آزمایش‌ها درست باشند، رشته "Perfect" برگردانده شود.
  • اگر برخی از آزمایش‌ها درست باشند، تعداد آزمایش‌های درست (۱ یا ۲) برگردانده شود.
  • اگر همه آزمایش‌ها نادرست باشند، رشته "Indivisible" برگردانده شود.

مثال

digital_division(21) ➞ 1
# فقط بر مجموع ارقام خود بخش‌پذیر است (۲ + ۱ = ۳).

digital_division(128) ➞ 2
# بر هر یک از ارقام خود بخش‌پذیر است.
# بر حاصل‌ضرب ارقام خود بخش‌پذیر است (۱ * ۲ * ۸ = ۱۶).

نمونه ورودی و خروجی

digital_division(100) ➞ 2

digital_division(12) ➞ "Perfect"

digital_division(31) ➞ "Indivisible"

نکات

  • هنگام بررسی بخش‌پذیری عدد بر هر یک از ارقام خود، ارقام صفر را نادیده بگیرید (به مثال سوم مراجعه کنید).
  • اگر عدد حداقل یک رقم صفر داشته باشد، نمی‌تواند بر حاصل‌ضرب ارقام خود بخش‌پذیر باشد (تقسیم بر صفر).
  • هر عدد یک‌رقمی بزرگ‌تر از ۰ به طور پیش‌فرض "Perfect" است.
  • عدد داده‌شده همیشه یک عدد صحیح مثبت بزرگ‌تر از ۰ خواهد بود.
digital_division(100)  ➞ 2
digital_division(12)  ➞ "Perfect"
digital_division(31)  ➞ "Indivisible"
digital_division(21)  ➞ 1
digital_division(128)  ➞ 2
digital_division(111)  ➞ "Perfect"
digital_division(40)  ➞ 2
digital_division(35)  ➞ "Indivisible"
digital_division(666)  ➞ 2

پاسخ های کاربران به این تمرین

MarsBoy
امتیاز:‌ 7091
تصحیح اتوماتیک 0 0
‎پایتون‎
28 اسفند 1403

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

نظرات

*
*

تمرینات مرتبط