ধরুন, আমাদের একটি সংখ্যা দেওয়া হয়েছে এবং আমাদের যাচাই করতে হবে যে সংখ্যাটি ১৭ দ্বারা বিভাজ্য কিনা।
যেমন, ইনপুট ৯৯৯৪৩ হলে আউটপুট হবে "বিভাজ্য"।
এই সমস্যাটি সমাধান করব আমরা পুনরাবৃত্তি বিয়োগ পদ্ধতিতে, যেখানে সংখ্যার শেষ অঙ্ক বের করে তা ৫ দিয়ে গুণ করব এবং ফলাফলটি বাকি সংখ্যা থেকে বিয়োগ করব। এই প্রক্রিয়া দুই অঙ্কের একটি সংখ্যা পাওয়া পর্যন্ত চলবে যা ১৭ দ্বারা বিভাজ্য।
সমাধানের ধাপসমূহ
- যখন সংখ্যা ১০০ দ্বারা বিভাজ্য (অর্থাৎ তিন অঙ্ক বা তার বেশি থাকবে), তখন নিচের কাজগুলো করুন:
- শেষ অঙ্ক = সংখ্যা mod ১০
- সংখ্যা = সংখ্যা / ১০ এর ফ্লোর মান (পূর্ণসংখ্যা ভাগ)
- সংখ্যা = সংখ্যা - (শেষ অঙ্ক × ৫)
- যদি সংখ্যা mod ১৭ = ০ হয়, তবে True ফেরত দিন।
উদাহরণ কোড
def solve(number):
while number // 100:
last_digit = number % 10
number //= 10
number -= last_digit * 5
return (number % 17 == 0)
number = 99943
if solve(number):
print("Divisible")
else:
print("Not Divisible")
ইনপুট
99943
আউটপুট
Divisible