エンゲージメント番号 は、約数の合計がもう一方の番号と等しい 2 つの番号のペアです。
たとえば、s(a) = b 1 および s(b) = a 1 の場合、(a, b) はエンゲージメント数のペアです。ここで、s(b) は次の等しい部分の合計です。 b: 等価条件は σ(a) = σ(b) = a b 1 です。ここで、σ は約数と関数を表します。
エンゲージメント番号の最初のいくつかのペアは次のとおりです: (48, 75)、(140, 195)、(1050, 1925) )、(1575, 1648)、(2024, 2295)、(5775, 6128) )。
既知のエンゲージメント数のペアはすべて逆のパリティを持ちます。同一のパリティ番号のペアは 1010 を超える必要があります。
Step 1: Find the sum of all divisors for both numbers. Step 2: Finally check if the sum of the divisors of number added by one is equal to the other number or not. Step 3: If yes, it is a Betrothed number and otherwise not.
Input:a = 48 b = 75 Output: 48 and 75 are Betrothed numbers
48の約数: 1、2、3、4、6、8、 12、16、24。それらの合計は 76 です。
75 の約数: 1、3、5、15、25。それらの合計は 49 です。
for ループを使用して、1 から a-1 までのすべての数値を確認します。
数値 a が割り切れるかどうかを確認し、ループします。そうであれば、この数値を aDivisorSum に加算します。ループが完了すると、aDivisorSum には a のすべての約数の合計が含まれます。
同様に、2 番目の数値のすべての約数の合計を求め、それを bDivisorSum に保存します。
次に、ある数値の約数の合計が別の数値と等しいかどうか (プラス 1 かどうか) を確認します。 「はい」の場合は、両方の数字がエンゲージメント番号であることを印刷してください。そうでなければそうではありません。
ライブデモンストレーション
#include <stdio.h> int main() { int i; int a,b; int aDivisorSum = 0; int bDivisorSum = 0; a=48 ; b=75 ; for( i = 1; i < a; i++) { if(a % i == 0) { aDivisorSum = aDivisorSum + i; } } for( i = 1; i < b; i++) { if(b % i == 0) { bDivisorSum = bDivisorSum + i; } } if(( a+1== bDivisorSum) && (b+1 == aDivisorSum)) { printf("%d and %d are Betrothed numbers</p><p>",a,b); } else { printf("%d and %d are not Betrothed numbers</p><p>",a,b); } }
48 and 75 are not Betrothed numbers
以上がC言語で予約番号とは何を意味するのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。