Amazon Interview Question
public class RecursiveFibonacci {
static void recursiveFibonacci(int count, int i, int j)
{
if(count > 0) {
System.out.print(i + " ");
recursiveFibonacci(count-1, j, i+j);
}
}
static void recursiveFibonacci(int count) // bootstrap function
{
recursiveFibonacci(count, 0, 1);
}
public static void main(String args[])
{
recursiveFibonacci(6);
System.out.println();
}
}
#include <stdio.h>
int fibonacci( int n);
void printFib(int m);
int main() {
printf("Fibonacci seq \n\n\n");
printFib(6);
printf("\n");
return 1;
}
//print series till m
void printFib(int m) {
if(m>0) {
printFib(m-1);
printf("%d ", fibonacci(m));
}
}
//fibonoacci no at position n
int fibonacci( int n){
if(n>0) {
if(n>2) {
return fibonacci(n-1)+fibonacci(n-2);
} else {
return n-1;
}
}
}
Hope this is right...
#include <iostream>
using namespace std;
int f(int n, bool x){
int num;
if (n == 1){
num =0 ;
}
else if (n == 2){
num = 1;
if (x)
cout<< 0 <<endl;
}
else{
if (x)
num = f(n-1, true) + f(n-2, false);
else
num = f(n-1, false) + f(n-2, false);
}
if (x){
cout<< num<<endl;
}
return num;
}
int main(){
f(10, true);
}
- my implementation January 18, 2011