# Java program to print Fibonacci sequence Recursive & Non Recursive

The Fibonacci sequence is defined by the following rule. The first 2 values in the sequence are 1, 1. Every subsequent value is the sum of the 2 values preceding it. Write a Java program that uses both recursive and non-recursive functions to print
the nth value of the Fibonacci sequence.

```1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 /*Non Recursive Solution*/ import java.util.Scanner; class Fib { public static void main(String args[ ]) { Scanner input=new Scanner(System.in); int i,a=1,b=1,c=0,t; System.out.println("Enter value of t:"); t=input.nextInt(); System.out.print(a); System.out.print(" "+b); for(i=0;i<t-2;i++) { c=a+b; a=b; b=c; System.out.print(" "+c); } System.out.println(); System.out.print(t+"th value of the series is: "+c); } }```
```1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 /* Recursive Solution*/ import java.io.*; import java.lang.*; class Demo { int fib(int n) { if(n==1) return (1); else if(n==2) return (1); else return (fib(n-1)+fib(n-2)); } } class RecFibDemo { public static void main(String args[])throws IOException { InputStreamReader obj=new InputStreamReader(System.in); BufferedReader br=new BufferedReader(obj); System.out.println("enter last number"); int n=Integer.parseInt(br.readLine()); Demo ob=new Demo(); System.out.println("fibonacci series is as follows"); int res=0; for(int i=1;i<=n;i++) { res=ob.fib(i); System.out.println(" "+res); } System.out.println(); System.out.println(n+"th value of the series is "+res); } }```

### 15 Responses to “Java program to print Fibonacci sequence Recursive & Non Recursive”

1. Thank you for your initiative to post this one it’s a great help for my Information Technology studies. thanks a lot.

2. Frank Isack

import java.util.*;
class Rabbit{
int rabbit(int n) {
if(n<=2){
return 1;
}
else{
return rabbit(n-1)+(n-2);
}
}

public static void main(String[]args){
Scanner gr = new Scanner(System.in);
System.out.println("enter last n");
int n = gr.nextInt();
int F1=0,F2=0, res=1;
System.out.println("fibonacci series is as follows");

for(int i=1;i<n;i++) {
F1=F2;
F2=res;
res=F1+F2;
System.out.print(" "+res);
}
System.out.printf("\n");
System.out.println(n+"th value of the series is "+res);
}
}

3. //This program display the Fibonacci series in java language.

import java.util.*;
class Rabbit{
int rabbit(int n) {
if(n<=2){
return 1;
}
else{
return rabbit(n-1)+(n-2);
}
}
public static void main(String[]args){
Scanner gr = new Scanner(System.in);
System.out.println("enter last n");
int n = gr.nextInt();
int F1=0,F2=0, res=1;
System.out.println("fibonacci series is as follows");
for(int i=1;i<n;i++) {
F1=F2;
F2=res;
res=F1+F2;
System.out.print(" "+res);
}
System.out.printf("\n");
System.out.println(n+"th value of the series is "+res);
}
}

4. Sherlyne Pulminar

public class Fibonacci {
public static void main(String[]args){

try {
int prev1=0,prev2=0,prev3=1;

System.out.println(“Enter input:”);

System.out.println(“Fabonacci”);

for (int i=0;i<num;i++){
System.out.println(prev3);

prev1=prev2;
prev2=prev3;
prev3=prev1+prev2;

}
} catch (Exception e){
System.out.print("Error");

}
}
}

5. HHHProgram

Excellent article for the Fibonacci series of course this site is doing a very good job of serving useful information. I’m proud to be a part of its Readers community.
For the Fibonacci programs in different language like C language,JAVA,C# must visit
http://www.hhhprogram.com/2013/05/fibonaccci-series.html

6. kishan

hi dude i am visit you site and its relay very very nice.
I have one site but i am in some trouble not more visitor in my site, so please tell me what am i do for more visitor.

7. kishan

hi dude i am visit your site and it is very nice contain, explain in full details

8. Edwin Waithanji

Hey guys. Its Edwin, a new learner in java,please send me a Ms word document to explain the whole program that uses both recursive and non recursive functions to print the nth value of a Fibonacci sequence. I will appreciate

• Hey edwin a whole detailed exaplanation u can find in programs section of http://www.javainhouse.com

9. for(int i=1;i<=n;i++) {
res=ob.fib(i);
System.out.println(" "+res);
}

this is not recursive, we need one function to be called and it shoud be recursive.

10. vijay krishna

HI ranjit,this is vijay krishna.actually in ur fibonocci series recursive program give exception because it takes 0 what it will return.so for my suggestion u can make as n==2 to n==0 in fib function

11. Ramesh Babi

Programmers Interview

12. niharika

can you please tell me the output

##### More from Basic Programs
###### Java program to find whether no. is palindrome or not ### Research Papers ### Projects 