ধরুন আমাদের একটি সংখ্যা n আছে। আমাদের এই সংখ্যার সুপার ডিজিট বের করতে হবে। একটি একক সংখ্যার নম্বরের সুপার ডিজিট হল একটি সংখ্যা কিন্তু বহু-সংখ্যার সংখ্যার জন্য সুপার ডিজিট হল সমস্ত অঙ্কের যোগফল যতক্ষণ না যোগফল একটি একক সংখ্যার সংখ্যা হয়৷
সুতরাং, যদি ইনপুটটি n =513682 এর মত হয়, তাহলে আউটপুট হবে 7 কারণ (5+1+3+6+8+2) =25, (2 + 5) =7।
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
- s :=0
- যখন n> 0 বা s> 9, কর
- যদি n 0 এর মত হয়, তাহলে
- n :=s
- s :=0
- s :=s + n mod 10
- n :=n/10 এর ফ্লোর মান
- যদি n 0 এর মত হয়, তাহলে
- রিটার্ন এস
উদাহরণ
আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -
def solve(n): s = 0 while(n > 0 or s > 9): if n == 0: n = s s = 0 s += n % 10 n //= 10 return s n = 513682 print(solve(n))
ইনপুট
513682
আউটপুট
7