public class Fibo { public static void main(String[] args) { long n = 0; try { n = Long.parseLong(args[0]); } catch (Exception e) { System.out.println("input error: not an integer"); return; } if (n < 0) { System.out.println("input error: negative input value"); } else { System.out.format("fiboIt(%d)=%d\n", n, fiboIt(n)); } } /* * Computes the n-th fibonacci number iteratively */ public static long fiboIt(long n) { long currentNMinusOne = 1; long currentNMinusTwo = 0; long currentN = 1; for (int i = 0; i < n ; i++) { currentN = currentNMinusOne + currentNMinusTwo; currentNMinusOne = currentN; currentNMinusTwo = currentNMinusOne; } return currentN; } }