import "./math" for Int import "./rat" for Rat System.print("The following numbers (less than 2^19) are perfect:") for (i in 2...(1<<19)) { var sum = Rat.new(1, i) for (j in Int.properDivisors(i)[1..-1]) sum = sum + Rat.new(1, j) if (sum == Rat.one) System.print(" %(i)") }