Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonで1桁の数字になるまで数字の合計を見つけるプログラム


正の数nがあるとすると、そのすべての桁を加算して新しい数を取得します。ここで、この操作を10未満になるまで繰り返します。

したがって、入力が9625のような場合、出力は4になります。

これを解決するには、次の手順に従います-

  • メソッドsolve()を定義します。これにはnがかかります
  • n <10の場合、
    • return n
  • s:=0
  • l:=(log(n)base 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. 数の偶数因子の合計を見つけるためのPythonプログラム

    この記事では、以下に示す問題ステートメントの解決策について学習します- 問題の説明 数値入力nが与えられた場合、タスクは数値の偶数因子の合計を見つけることです。 ここでは、最初にすべての奇妙な要因を排除する必要があります。 入力された数値が奇数の場合、偶数の因数はなく、直接ゼロを返します。それ以外の場合は、以下のコードのアプローチに従います。 以下は実装です- 例 import math # Returns sum of all even factors of n. def sumofFactors(n) :    # If n is odd   &nbs

  2. 数の因子の最小合計を見つけるためのPythonプログラム

    この記事では、以下に示す問題ステートメントの解決策について学習します- 問題の説明 入力された数値を指定して、指定された数値の因子の最小合計を求めます。 ここでは、すべての因子とそれに対応する合計を計算し、それらの中から最小値を見つけます。 したがって、数の積の最小合計を見つけるために、積の素因数の合計を見つけます。 これが問題の反復実装です- 例 #iterative approach def findMinSum(num):    sum_ = 0    # Find factors of number and add to the sum