// (define (fib n) // (f n 0 0 1)) // // (define (f n i fi fi1) // (if (= i n) // fi // (f n (+ i 1) fi1 (+ fi fi1)))) public class fib2 { public static void main(String [] args) { System.out.println(fib(Integer.parseInt(args[0]))); } public static double fib(int n) { return f(n,0,0,1); } private static double f(int n, int i, double fi, double fi1) { while (i!=n) { double old_fi = fi; i = i+1; fi = fi1; fi1 = old_fi+fi1; } return fi; } }