@@ -1,6 +1,6 @@
-- Exercice from slide 42/82
-dividers n = [k | k <- [2..(n-1)], rem n k == 0]
+dividers n = [k | k <- takeWhile (\k -> k * k <= n) [2..n], rem n k == 0]
dividersf n = filter (\k -> rem n k == 0) [2..(n-1)]
primer n = [i | i <- [2..(n-1)], null (dividers i)]