1  import java.util.Scanner;
  2  
  3  /**
  4     This program computes Fibonacci numbers using an iterative method.
  5  */ 
  6  public class LoopFib
  7  {  
  8     public static void main(String[] args)
  9     {  
 10        Scanner in = new Scanner(System.in);
 11        System.out.print("Enter n: ");
 12        int n = in.nextInt();
 13  
 14        for (int i = 1; i <= n; i++)
 15        {
 16           long f = fib(i);
 17           System.out.println("fib(" + i + ") = " + f);
 18        }
 19     }
 20  
 21     /**
 22        Computes a Fibonacci number.
 23        @param n an integer
 24        @return the nth Fibonacci number
 25     */
 26     public static long fib(int n)
 27     {  
 28        if (n <= 2) { return 1; }
 29        else
 30        {
 31           long olderValue = 1;
 32           long oldValue = 1;
 33           long newValue = 1;
 34           for (int i = 3; i <= n; i++)
 35           {  
 36              newValue = oldValue + olderValue;
 37              olderValue = oldValue;
 38              oldValue = newValue;
 39           }
 40           return newValue;
 41        }
 42     }
 43  }