Exemplo n.º 1
0
        static void Main(string[] args)
        {
            var array = new MyDelegate[5];


            for (int i = 0; i < array.Length; i++)
            {
                array[i] = () => new MyDelegate(GetRandom).Invoke();
            }


            MyArrayDelegate d = delegate(MyDelegate[] c)
            {
                double sr = 0;
                for (int i = 0; i < c.Length; i++)
                {
                    sr += c[i].Invoke();
                }
                return(sr / array.Length);
            };

            for (int i = 0; i < array.Length; i++)
            {
                Console.Write(array[i].Invoke() + " ");
            }
            Random rar = new Random();



            Console.WriteLine("\n mijin tvabanakany {0:##.###}", d(array));
            Console.WriteLine(rar.Next(1, 100));
            //Delay
            Console.ReadKey();
        }
Exemplo n.º 2
0
        static void Main(string[] args)
        {
            // Task 1
            Func <int, int, int, int> anonimous = delegate(int x, int y, int z) { return((x + y + z) / 3); };
            MyAnonimousDelegate       mydel     = delegate(int x, int y, int z) { return((x + y + z) / 3); };

            Console.WriteLine(anonimous(5, 14, 20));
            Console.WriteLine(mydel(1, 10, 5));

            // Task 2

            Func <double, double, double> Add = (x, y) => { return(x + y); };
            Func <double, double, double> Sub = (x, y) => x - y;
            Func <double, double, double> Mul = (x, y) => x * y;
            Predicate <double>            isDenominanorZero = y => y == 0;
            Func <double, double, double> Div = (x, y) => isDenominanorZero(y) ? Double.NaN : x / y;

            Console.WriteLine(Add(3, 15));
            Console.WriteLine(Sub(4, 1));
            Console.WriteLine(Mul(3, 4));
            Console.WriteLine(Div(5, 0));
            Console.WriteLine(Div(25, 5));


            // Task 3
            MyDelegate[] delegats = new MyDelegate[3] {
                method31, method32, method33
            };

            MyArrayDelegate arrDel = delegate(MyDelegate[] arrDelegats) { return(GetAverageValue(arrDelegats)); };

            Console.WriteLine("arrDel(delegats)" + arrDel(delegats));

            Console.ReadLine();
        }