Преглед изворни кода

Modify fibonacci to be terminal

DricomDragon пре 5 година
родитељ
комит
2f4a6c4636
1 измењених фајлова са 5 додато и 3 уклоњено
  1. 5 3
      t1.hs

+ 5 - 3
t1.hs

@@ -1,6 +1,8 @@
-f n = case n of
-	0 -> 1
-	_ -> n * f (n - 1)
+f n = ft n 1
+
+ft n acc = case n of
+	0 -> acc
+	_ -> ft (n - 1) (acc * n)
 
 main :: IO ()
 main = print ( f 5 )