diff --git a/03_recursion/01_countdown.js b/03_recursion/01_countdown.js new file mode 100644 index 0000000..a93a3a6 --- /dev/null +++ b/03_recursion/01_countdown.js @@ -0,0 +1,11 @@ +function countdown(i) { + console.log(i); + // base case + if (i <= 0) { + return; + } else { + countdown(i-1); + } +} + +countdown(5); diff --git a/03_recursion/02_greet.js b/03_recursion/02_greet.js new file mode 100644 index 0000000..5161a08 --- /dev/null +++ b/03_recursion/02_greet.js @@ -0,0 +1,16 @@ +function greet2(name) { + console.log('how are you, ' + name + '?'); +} + +function bye() { + console.log('ok bye!'); +} + +function greet(name) { + console.log('hello, ' + name + '!'); + greet2(name); + console.log('getting ready to say bye...'); + bye(); +} + +greet('adit'); diff --git a/03_recursion/03_factorial.js b/03_recursion/03_factorial.js new file mode 100644 index 0000000..9ae69ad --- /dev/null +++ b/03_recursion/03_factorial.js @@ -0,0 +1,9 @@ +function fact(x) { + if (x === 1) { + return 1; + } else { + return x * fact(x-1); + } +} + +console.log(fact(5));