完全數的java演算法實現

2021-08-11 01:20:25 字數 631 閱讀 5533

本文為博主原創,接受意見,不喜勿噴!

本文以10000以內的完全數作為例子

完全數:指所有因子之和(包括1但不包括這個數本身)等於其本身的數叫完全數。

例如:6=1+2+3。1、2、3都是6的因子。

1.第一層迴圈是遍歷10000以內的所有數(不包括1,因為包括1的話後面會變得更加麻煩),以便於後面做判斷;

2.第二層迴圈遍歷10000以內的數的所有因子,判斷條件為小於等於i/2是因為每個整數的最大因子不超過它的一半;

3.如果i能被j整除,才去獲取它的因子,然後每獲取到乙個因子就把它累加到count(定義為1是因為完全數的定義)中;

4.然後判斷當前數的所有因子的和與當前數是否相等,如果相等,列印輸出。

for(int i = 2;i<=10000;i++)//遍歷10000以內的所有數

}if(i==count)//判斷當前數和其所有因子和是否相等

}

結果:

完全數的java演算法

什麼是完全數?如果乙個正整數恰好等於它所有的真因子 即除了自身以外的因子 之和,則稱之為完全數 完美數 例 6 1 2 3 歐幾里德完全數定理 若p 2的p次冪 1 這兩個值均為素數,則 2的 p 1 次冪 乘以 2的p次冪 1 的值是個完全數。package yzg.arithmetic 歐幾里德...

演算法練習 完全數

完全數 定義 數的因子就是所有可以整除這個數的數,但是不包括這個數自身。比如15的因子是1,3,5 如果乙個正整數如果正好等於它的所有因子之和,這個數就稱為 完數 例如,6的因子為 1,2,3,而6 1 2 3,因此6是 完數 維基百科 完全數 梅森素數 古希臘數學家歐幾里得是通過 的表示式發現前四...

c 實現 完全數計算

題目描述 完全數 perfect number 又稱完美數或完備數,是一些特殊的自然數。它所有的真因子 即除了自身以外的約數 的和 即因子函式 恰好等於它本身。例如 28,它有約數1 2 4 7 14 28,除去它本身28外,其餘5個數相加,1 2 4 7 14 28。給定函式count int n...