diff --git a/03_recursion/scala/01_countdown.scala b/03_recursion/scala/01_countdown.scala new file mode 100644 index 0000000..d8f536f --- /dev/null +++ b/03_recursion/scala/01_countdown.scala @@ -0,0 +1,8 @@ +def countdown(i: Int): Int = { + println(i) + //base case + if(i <= 0) return i + //recursive case + else countdown(i-1) +} +countdown(5) diff --git a/03_recursion/scala/02_greet.scala b/03_recursion/scala/02_greet.scala new file mode 100644 index 0000000..0027485 --- /dev/null +++ b/03_recursion/scala/02_greet.scala @@ -0,0 +1,16 @@ +def greet2(name: String): Unit = { + println("how are you, " + name + "?") +} + +def bye(): Unit = { + println("ok bye!") +} + +def greet(name: String): Unit = { + println("hello, " + name + "!") + greet2(name) + println("getting ready to say bye...") + bye() +} + +greet("adit") diff --git a/03_recursion/scala/03_factorial.scala b/03_recursion/scala/03_factorial.scala new file mode 100644 index 0000000..fbeccb5 --- /dev/null +++ b/03_recursion/scala/03_factorial.scala @@ -0,0 +1,5 @@ +def fact(x: Int): Int = { + if(x == 1) 1 + else x * fact(x-1) +} +println(fact(5))