عدد کاپریکار عددی مثبت است که اگر آن را به توان دو برسانیم، سپس عدد بهدستآمده را به دو قسمت جداگانه تقسیم کنیم و آنها را با هم جمع کنیم، مقدار حاصل برابر خود عدد اولیه باشد.
قوانین:
- اگر تعداد ارقام حاصلضرب زوج باشد، دو قسمت باید هماندازه باشند.
- اگر تعداد ارقام فرد باشد، نیمهی راست باید طولانیتر باشد، و نیمهی چپ میتواند صفر یا کوچکتر باشد.
تابعی بنویسید که یک عدد صحیح مثبت n
دریافت کند و بررسی کند که آیا عدد کاپریکار است یا نه.
اگر عدد کاپریکار باشد، True
و در غیر این صورت False
برگرداند.
مثال
is_kaprekar(3) ➞ False
# 3² = "9"
# تقسیم: Left = 0, Right = 9
# 0 + 9 = 9 ≠ 3 
نکات:
- عدد 0 و 1 بهطور بدیهی کاپریکار هستند، زیرا برابر توان دوم خودشان هستند.
- اعدادی که فقط شامل 9 هستند (مثل 9، 99، 999، …) همیشه اعداد کاپریکار هستند
IsKaprekar(3) ➞ False
IsKaprekar(5) ➞ False
IsKaprekar(297) ➞ True
IsKaprekar(2) ➞ False
IsKaprekar(9) ➞ True
IsKaprekar(65) ➞ False
IsKaprekar(99) ➞ True
IsKaprekar(666) ➞ False
نظرات