Computer >> Máy Tính >  >> Lập trình >> Python

Làm thế nào để kiểm tra xem hai số (m, n) là thân thiện hay không bằng cách sử dụng Python?

Các số hữu tình là hai số khác nhau có quan hệ với nhau sao cho tổng các ước số thích hợp của mỗi số bằng số kia. (Ước số thích hợp của một số là một thừa số dương của số đó khác với chính số đó. Ví dụ:các ước số thích hợp của 6 là 1, 2 và 3)

Trong python, bạn có thể tìm những số này bằng cách lấy tổng của từng số này và so sánh chúng với số kia. Ví dụ:

def are_amicable(x, y)
   if x==y:
      return False
   # Find sum of their proper divisors
   sum_x = sum(e for e in range(1, x//2+1) if x % e == 0)
   sum_y = sum(e for e in range(1, y//2+1) if y % e == 0)
   
   #Return true of they satisfy the last condition
   return sum_x==y and sum_y==x
print(are_amicable(15, 20))
print(are_amicable(220, 284))

Điều này sẽ cung cấp kết quả

False
True