কম্পিউটার

পাইথনে এক অঙ্কের সংখ্যা না হওয়া পর্যন্ত অঙ্কের যোগফল খুঁজে বের করার প্রোগ্রাম


ধরুন আমাদের একটি ধনাত্মক সংখ্যা n আছে, আমরা একটি নতুন সংখ্যা পেতে এর সমস্ত সংখ্যা যোগ করব। এখন এই অপারেশনটি পুনরাবৃত্তি করুন যতক্ষণ না এটি 10 ​​এর কম হয়।

সুতরাং, যদি ইনপুট 9625 এর মত হয়, তাহলে আউটপুট হবে 4।

এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -

  • একটি পদ্ধতি সংজ্ঞায়িত করুন সমাধান(), এটি নেবে
  • যদি n <10 হয়, তাহলে
    • রিটার্ন n
  • s :=0
  • l :=(log(n) বেস 10 + 1)
  • এর মেঝে
  • যখন l> 0, do
    • s :=s + (n mod 10)
    • n :=n / 10 এর ভাগফল
    • l :=l - 1
  • রিটার্ন সমাধান(গুলি)

আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -

উদাহরণ

import math
class Solution:
   def solve(self, n):
      if n < 10:
         return n
      s = 0
      l = math.floor(math.log(n, 10) + 1)
      while l > 0:
         s += n % 10
         n //= 10
         l -= 1
      return self.solve(s)
ob = Solution()
print(ob.solve(9625))

ইনপুট

9625

আউটপুট

4

  1. পাইথন প্রোগ্রামে একটি সংখ্যার জোড় গুণনীয়কের সমষ্টি খুঁজুন

  2. একটি সংখ্যার বিজোড় গুণনীয়কের যোগফল খুঁজে বের করার জন্য পাইথন প্রোগ্রাম

  3. একটি সংখ্যার জোড় গুণকের যোগফল খুঁজে বের করার জন্য পাইথন প্রোগ্রাম

  4. সংখ্যার ন্যূনতম যোগফল নির্ণয়ের জন্য পাইথন প্রোগ্রাম