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

2つの数が友愛数であるかどうかをチェックするPythonプログラム


友愛数は2つの異なる数であるため、それぞれの適切な除数の合計が他の数と等しくなります。 2つの数値が友愛数であるかどうかを確認する必要がある場合は、数値を反復処理し、剰余演算子を使用するメソッドを定義できます。以前に定義された関数を呼び出して、2つの数値が友愛数であるかどうかを判断する別のメソッドが定義されています。

以下は同じのデモンストレーションです-

import math

def divided_sum_val(my_val) :

   res = 0
   for i in range(2, int(math.sqrt(my_val)) + 1) :

      if (my_val % i == 0) :

         if (i == int(my_val / i)) :
            res = res + i
         else :
            res = res + (i + int(my_val / i))
   return (res + 1)

def check_amicable(x, y) :

   if (divided_sum_val(x) != y) :
      return False

   return (divided_sum_val(y) == x)

first_num = 220
second_num = 288
print("The numbers are :")
print(first_num)
print(second_num)
if (check_amicable(first_num, second_num)) :
   print ("The given numbers are amicable in nature")
else :
   print ("The given numbers are not amicable in nature")

出力

The numbers are :
220
288
The given numbers are not amicable in nature

説明

  • 「divided_sum_val」という名前のメソッドが定義されており、整数のパラメーターを取ります。

  • 「for」ループを使用して値を反復処理し、数値の除算性をチェックします。

  • イテレータが値をイテレータで割った値に等しい場合、イテレータによってインクリメントされます。

  • それ以外の場合は、分割された数値全体が追加されます。

  • 「check_amicable」という名前の別のメソッドが定義されており、2つの数値を取ります。

  • 「divided_sum_val」を呼び出し、計算値に応じて「True」または「False」を返します。

  • 2つの番号が定義され、コンソールに表示されます。

  • このメソッドは、これら2つの番号を渡すことによって呼び出されます。

  • 出力に基づいて、関連するメッセージがコンソールに表示されます。


  1. 2つの数の最大公約数のためのPythonプログラム

    この記事では、以下に示す問題ステートメントの解決策について学習します。 問題の説明 − 2つの整数が与えられているので、2つの数値の最大公約数を表示する必要があります ここでは、入力として受け取る2つの数値の最小値を計算しています。各値を1から計算された最小値まで除算することによって計算されて除数を計算するループ 条件が真であると評価されるたびに、カウンターは1ずつ増加します。 それでは、以下の実装の概念を見てみましょう- 例 a = 5 b = 45 count = 0 for i in range(1, min(a, b)+1):    if a%i==0 an

  2. 2つの数値を追加するPythonプログラム

    この記事では、特定の問題ステートメントを解決するための解決策とアプローチについて学習します。 問題の説明 2つの大きな数が与えられ、それらを追加して出力を表示する必要があります。 ブルートフォースアプローチでは、オペランド間に「+」演算子を使用するか、2つの数値を反復可能に格納して、Python標準ライブラリで使用可能な組み込みのsum関数を使用できます。 このアプローチでは、計算が10進数で直接行われるため、時間計算量が増加します。 次に、10進数のビットを処理する別のアプローチについて説明します。 ここでは、合計とキャリーを計算する加算器の概念を使用します。 それでは、実装を見