편집 기록

편집 기록
  • 프로필 편집요청빌런님의 편집
    날짜2020.04.07

    친화수 구하기


    def amicable(num):
        a = 0
        for i in range(3, num):
            if num % i == 0:
                a = a + i
        return a
    
    for j in range(1, 500):
        amicable(j)
    for k in range(1, 500):
        amicable(k)
    
    if amicable(j) == amicable(k) and j != k:
        print(j, '의 친화수는', k)
    

    친화수를 구하기 위해 코드를 작성해 보았습니다.
    여기서 친화수란 어느 한 수의 진약수를 모두 더하면 다른 수가 되는 것을 말합니다.
    EX) 220, 284 인데, 220의 진약수는 1,2,4,5,10,11,20,22,44,55,110이고, 모두 더하면 284가 됩니다. 그리고 이 284의 진약수 1,2,4,71,142를 더하면 220이 됩니다. 이런 수를 친화수라고 하는데요
    제가 1부터 500사이의 (먼저 간단하게) 친화수를 구해보려고 코드를 작성해 보았는데
    결과가 제대로 나오지 않습니다. 어디가 문제일까요?

  • 프로필 알 수 없는 사용자님의 편집
    날짜2020.04.07

    친화수 구하기


    이미지

    친화수를 구하기 위해 코드를 작성해 보았습니다. 여기서 친화수란 어느 한 수의 진약수를 모두 더하면 다른 수가 되는 것을 말합니다. EX) 220, 284 인데, 220의 진약수는 1,2,4,5,10,11,20,22,44,55,110이고, 모두 더하면 284가 됩니다. 그리고 이 284의 진약수 1,2,4,71,142를 더하면 220이 됩니다. 이런 수를 친화수라고 하는데요 제가 1부터 500사이의 (먼저 간단하게) 친화수를 구해보려고 코드를 작성해 보았는데 결과가 제대로 나오지 않습니다. 어디가 문제일까요?