ধরুন, আমাদের একটি বড় সংখ্যা দেওয়া হয়েছে এবং আমাদের পরীক্ষা করতে হবে যে সংখ্যাটি 19 দ্বারা বিভাজ্য কিনা।
সুতরাং, যদি ইনপুট 86982 এর মত হয়, তাহলে আউটপুট হবে "বিভাজ্য"।
আমরা বারবার যোগ করার পদ্ধতি ব্যবহার করে এই সমস্যার সমাধান করব, যেখানে আমরা সংখ্যা থেকে শেষ অঙ্কটি বের করব, এটিকে 2 দিয়ে গুণ করব এবং অবশিষ্ট সংখ্যার সাথে ফলাফল যোগ করব যতক্ষণ না আমরা 19 দ্বারা বিভাজ্য একটি দুই-অঙ্কের সংখ্যা না পাই।পি>
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
- যখন সংখ্যাটি 100 দ্বারা বিভাজ্য, কর
- last_digit :=সংখ্যা মোড 10
- সংখ্যা :=তল মান (10 দ্বারা বিভক্ত সংখ্যা)
- সংখ্যা :=সংখ্যা + শেষ_সংখ্যা * 2
- সত্য ফেরত দিন, যদি মোড 19 নম্বরটি 0 এর মতো হয়।
আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -
উদাহরণ
def solve(number) : while(number // 100) : last_digit = number % 10 number //= 10 number += last_digit * 2 return (number % 19 == 0) number = 86982 if solve(number) : print("Divisible") else : print("Not Divisible")
ইনপুট
86982
আউটপুট
Divisible