int y = 1 + y/2; // geht nicht // geht doch: Func<int,int> f = (x => x > 0 ? x * f(x-1) : 1); Console.WriteLine (f(3));