From b88bf1e6b60fe621824b39f77c140952ea8d7c07 Mon Sep 17 00:00:00 2001 From: Evan Ferrao Date: Fri, 9 Aug 2024 23:42:01 +0530 Subject: [PATCH] mynotes: day4: recursion hell --- Recursion/Fibonacci.java | 25 +++++++++++++++++++++ Recursion/PrintMtoN.java | 27 +++++++++++++++++++++++ Recursion/PrintMtoNUsingBacktracking.java | 27 +++++++++++++++++++++++ Recursion/PrintNtoM.java | 27 +++++++++++++++++++++++ Recursion/PrintNtoMUsingBacktracking.java | 21 ++++++++++++++++++ 5 files changed, 127 insertions(+) create mode 100644 Recursion/Fibonacci.java create mode 100644 Recursion/PrintMtoN.java create mode 100644 Recursion/PrintMtoNUsingBacktracking.java create mode 100644 Recursion/PrintNtoM.java create mode 100644 Recursion/PrintNtoMUsingBacktracking.java diff --git a/Recursion/Fibonacci.java b/Recursion/Fibonacci.java new file mode 100644 index 0000000..cbb25bc --- /dev/null +++ b/Recursion/Fibonacci.java @@ -0,0 +1,25 @@ +// write code to find the nth fibonacci number using recursion +import java.util.Scanner; +public class Fibonacci{ + static int first=0,second=1,next=0; + static void printFibonacci(int count){ + if(count>0){ + next = first + second; + first = second; + second = next; + System.out.print(" "+next); + printFibonacci(count-1); + + // can you assign proper variable names to n1, n2 and n3? + // n1 should be named as first, n2 as second and n3 as next + } + } + public static void main(String args[]){ + Scanner sc = new Scanner(System.in); + System.out.println("Enter the number of terms: "); + int count = sc.nextInt(); + System.out.print(first+" "+second);//printing 0 and 1 + printFibonacci(count-2);//n-2 because 2 numbers are already printed + sc.close(); + } +} \ No newline at end of file diff --git a/Recursion/PrintMtoN.java b/Recursion/PrintMtoN.java new file mode 100644 index 0000000..0c17950 --- /dev/null +++ b/Recursion/PrintMtoN.java @@ -0,0 +1,27 @@ +import java.util.Scanner; + +class PrintMtoN { + + static void func(int i, int n){ + + // Base Condition. + if(in) return; + + // Function call to print(i+1) integers. + func(i+1,n); + System.out.println(i); + + } + public static void main(String[] args) { + + // Here, let’s take the value of n to be 4. + //int n = 8; + Scanner sc = new Scanner(System.in); + System.out.println("Enter the value of m (Ending Variable): "); + int m = sc.nextInt(); + System.out.println("Enter the value of n (Starting Variable): "); + int n = sc.nextInt(); + func(n,m); + sc.close(); + } +} \ No newline at end of file diff --git a/Recursion/PrintNtoM.java b/Recursion/PrintNtoM.java new file mode 100644 index 0000000..61542c0 --- /dev/null +++ b/Recursion/PrintNtoM.java @@ -0,0 +1,27 @@ +// write a code to print N to one using recursion and function in java using backtracking +import java.util.Scanner; +class PrintNtoMUsingBacktracking { + + static void func(int i, int n){ + + // Base Condition. + if(i