class Fibo {
  public int FiboFun(int rev){ //재귀함수
  if(rev == 0 ){
   return 0;
  }else if (rev == 1 ) {
   return 1;
  }else {
   return FiboFun(rev-1) + FiboFun(rev-2);
  }
 }

 

 public int FiboLoop(int rev){ //for문

  int result=0;
  int proc1=0; // n-1
  int proc2=0; // n-2

  for(int i=0; i<=rev; i++){

   if (i ==0 ) {
    proc1=0;
    proc2=0;
    result=0;
    //System.out.println("0 : proc1 : " + proc1 + " proc2: " + proc2 + " result : " + result);
   } else if(i==1) {
    proc2=0;
    result=1;
    //System.out.println("1: proc1 : " + proc1 + " proc2: " + proc2 + " result : " + result);
   } else {
    result = proc1+ proc2;
    //System.out.println("- : proc1 : " + proc1 + " proc2: " + proc2 + " result : " + result);
   }
   proc2=proc1;
   proc1= result;
  }

  return result;
 }


 public static void main(String[] args) {
  Fibo fb= new Fibo();
  System.out.println("function : "+fb.FiboFun(10));
  System.out.println("loop : "+fb.FiboLoop(10));
 }
}

+ Recent posts