완전수

완전수

쉬움

지침

니코마코스(서기 60~120년)가 양의 정수를 분류한 체계에 따라, 어떤 수가 완전수, 과잉수, 부족수인지 판별해요.

그리스 수학자 니코마코스는 양의 정수를 분류하는 체계를 고안했어요. 각 수를 진약수의 합에 따라 완전수, 과잉수, 부족수 중 하나로 구분하는 방식이었죠. _진약수의 합_은 어떤 수의 약수 중에서 자기 자신을 제외한 것들의 합으로 정의해요. 예를 들어, 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에서 편집 링크가 새 창이나 탭에서 열려요
Vim script Exercism

완전수 문제를 시작해 볼 준비가 됐나요?

Exercism에 가입하고 Vim script 트랙을 연습 문제 89개, 그리고 실제 사람의 멘토링과 함께 배우고 익혀 보세요. 모두 무료예요.