Problem 1 Fibonacci sequence Write a program to accomplish t
Problem 1: Fibonacci sequence
Write a program to accomplish the following:
a) Prompt user for an integer number n. Find and display the n-th Fibonacci number using a recursive function.
b) Do the same as (a) using a non-recursive function.
Sample input: 10
Sample output:
a) using recursive function: 55
b) using non-recursive function: 55
Solution
FibnocciTest.java
import java.util.Scanner;
public class FibnocciTest {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println(\"Enter an integer number n: \");
int n = scan.nextInt();
int nth = recFibonacci(n);
System.out.println(\"Nth fibonaci using recursive function: \"+nth);
nth = NonecFibonacci(n);
System.out.println(\"Nth fibonaci using non-recursive function: \"+nth);
}
public static int recFibonacci(int n)
{
if (n <= 1)
return n;
return recFibonacci(n-1) + recFibonacci(n-2);
}
public static int NonecFibonacci(int n)
{
int c=0;
int a = 0;
int b = 1;
for (int i = 2; i <= n; i++)
{
c = a + b;
a = b;
b = c;
}
return c;
}
}
Output:
Enter an integer number n:
10
Nth fibonaci using recursive function: 55
Nth fibonaci using non-recursive function: 55
