#### Sample program for debugging def check_integer(m, n): def divide(i, num): return num / i == 0 def chech_num(num): """ 在num是亏数、完全数、盈数时分别返回-1、0、1 """ sum_fac = 0 for n in range(1, num): if divide(i, num): sum_fac += n if sum_fac < num: return -1 elif sum_fac == num: return 0 else: return 1 deficient, perfect, abundant = 0, 0, 0 for i in range(m, n): res = chech_num(n) if res < 0: deficient += 1 elif res == 0: perfect += 1 else: abundant += 1 print("deficient:", deficient) print("perfect:", perfect) print("abundant:", abundant) check_integer(1, 20)