//Fibonacci_int.java     Calcula los numeros de la serie de fibonacci en forma recursiva
//  produce overflow en n= 47  
//Guillermo Escobar P

   import java.awt.*;
   import java.applet.Applet;


   public class Fibonacci_int extends Applet{
   
      Label numLabel, resultLabel, aclaracion;
      TextField num ,result;
   
   
   
      public void init()
      
      {   numLabel = new Label("Teclee un numero y pulse return");
         num = new TextField(10);
         resultLabel = new Label("El valor de fibonacci con int es ");
         aclaracion = new Label("Overflow en n = 47");
         result  = new TextField(15);
         result.setEditable(false);
         add(numLabel);
         add(num);
         add(resultLabel);
         add(result);
      	add(aclaracion);
      }
   
   
      public boolean action(Event e,Object o)
      
      { int number ,  fibonacciVal;
      
         number = Integer.parseInt(num.getText());
         showStatus("Calculando");
         fibonacciVal = fibonacci(number); 
         showStatus("Listo");
         result.setText(Integer.toString(fibonacciVal));
         return true;
      
      }
   
   
   //definicion recursiva del metodo de fibonacci
   
   
   
      int fibonacci(int n)
      
      {   
         if (n == 0 ||n == 1)  //caso base
            return n;
         else
            return fibonacci(n-1)+ fibonacci(n-2);
      }
   }



