Browse Source

Modify fibonacci to be terminal

DricomDragon 5 years ago
parent
commit
2f4a6c4636
1 changed files with 5 additions and 3 deletions
  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 )