#!/usr/bin/ruby
#
## https://rosettacode.org/wiki/Gamma_function
#
define e = Number.e;
define pi = Number.pi;
func Γ(t) {
t < 20 ? (__FUNC__(t + 1) / t)
: (sqrt(2*pi*t) * pow(t/e + 1/(12*e*t), t) / t);
}
(1..10).each { |i|
say ("%.14e" % Γ(i/3));
};