完全数

完全数

初級

説明

ニコマコス(西暦60〜120年)による正の整数の分類法に基づいて、ある数値が完全数、過剰数、不足数のどれにあたるかを判定してください。

ギリシャの数学者ニコマコスは、正の整数の分類法を考案しました。それぞれの数値は、そのアリコット和に基づいて、完全数・過剰数・不足数のいずれか1つにだけ分類されます。 _アリコット和_とは、ある数値の約数のうち、その数値自身を除いたものの和と定義されます。 例えば、15のアリコット和は1 + 3 + 5 = 9です。

完全数

数値がアリコット和と等しいとき、その数値は完全数です。 例えば、

  • 6は、1 + 2 + 3 = 6なので完全数です。
  • 28は、1 + 2 + 4 + 7 + 14 = 28なので完全数です。

過剰数

数値がアリコット和より小さいとき、その数値は過剰数です。 例えば、

  • 12は、1 + 2 + 3 + 4 + 6 = 16なので過剰数です。
  • 24は、1 + 2 + 3 + 4 + 6 + 8 + 12 = 36なので過剰数です。

不足数

数値がアリコット和より大きいとき、その数値は不足数です。 例えば、

  • 8は、1 + 2 + 4 = 7なので不足数です。
  • 素数は不足数です。

課題

与えられた数値が完全数かどうかを判定する方法を実装してください。 取り組んでいる言語によっては、与えられた数値が過剰数か不足数かどうかを判定する方法も実装する必要があるかもしれません。

GitHubで編集する リンクは新しいウィンドウまたはタブで開きます
Elixir Exercism

完全数を始める準備はできましたか?

Exercismに登録すれば、58個のコンセプト168個の演習、そして本物の人間によるメンタリングとともに、Elixirを学んでマスターできます。すべて無料です。