Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Program
- {
- static int Main()
- {
- Console.WriteLine("BEGIN!");
- run3();
- Console.WriteLine("END!"); Console.ReadLine(); return 0;
- }
- static void run3()
- {
- Func<object, object> Вызыватель = x =>
- {
- Func<object, object> XAsFunc = (Func<object, object>)x;
- return XAsFunc( XAsFunc );
- };
- Func<object, object> ОсновнаяФункция = x =>
- {
- Func<object, object> XAsFunc = (Func<object, object>)x;
- Func<object, object> ВозвращаемаяФункция = y =>
- {
- int n = (int)y;
- if (n < 2) return 1;
- var fh = (Func<object, object>)(XAsFunc(XAsFunc));
- return n * (int)fh(n - 1);
- };
- return ВозвращаемаяФункция;
- };
- var РабочаяФункцияКакОбъект = Вызыватель( ОсновнаяФункция );
- var Результат = ( (Func<object, object>)РабочаяФункцияКакОбъект )(4);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement