procedurefibonacciis N : Integer := Integer'Value(Ada.Command_Line.Argument(Number => 1)); functionfib( N: in Integer) returnIntegeris A : Integer := 0; B : Integer := 1; C : Integer := 1; begin if (N <= 1) then return N; endif; for i in2 .. N loop C := A + B; A := B; B := C; endloop; return B; end; begin Ada.Text_IO.Put_Line("fib(" & Integer'Image(N) & ") = " & Integer'Image(fib(N))); end fibonacci;
fun fib n = letfun iter (a, b, n) = if n <= 1then b else iter (b, a + b, n - 1) in iter(0, 1, n) end
val n_str = hd (CommandLine.arguments()) val n = valOf (Int.fromString n_str) val res = fib n val _ = print ("fib(" ^ Int.toString n ^ ") = " ^ Int.toString res) val _ = OS.Process.exit(OS.Process.success)
funcfib(_n: Int) -> Int { if (n <=1) { return n } var a =0 var b =1 for_in2...n { let c = a + b a = b b = c } return b }
let args =CommandLine.arguments if args.count ==2, let n =Int(args[1]) { print("fib(\(n)) = \(fib(n))") } else { print("Usage: swift fibonacci.swift <number>") }