Example #1
0
        static void Main(string[] args)
        {
            GetGreeting  del     = GoodMorning;
            UseOperation delegat = Add;

            if (DateTime.Now.Hour < 12)
            {
                del = GoodMorning;
            }
            else if (DateTime.Now.Hour >= 12 && DateTime.Now.Hour < 18)
            {
                del = GoodDay;
            }
            else if (DateTime.Now.Hour >= 18 && DateTime.Now.Hour < 22)
            {
                del = GoodEvening;
            }
            else if (DateTime.Now.Hour >= 22 || DateTime.Now.Hour < 11)
            {
                del = GoodEvening;
            }
            del();


            Console.WriteLine("  Введите числа для расчёта");
            Console.Write("  a - ");
            int a = Convert.ToInt32(Console.ReadLine());

            Console.Write("  b - ");
            int b = Convert.ToInt32(Console.ReadLine());

            Console.Write("  Какую операцию провернуть (+,-,*,/) - ");
            string operacia = Convert.ToString(Console.ReadLine());

            if (operacia == "+")
            {
                delegat = Add;
            }
            else if (operacia == "-")
            {
                delegat = Subtract;
            }
            else if (operacia == "*")
            {
                delegat = Multiply;
            }
            else if (operacia == "/")
            {
                delegat = IntegerDevide;
            }
            delegat(a, b);
        }
Example #2
0
        static void Main(string[] args)
        {
            // Task 3
            var circle = new Circle();

            MyDelegate square = circle.GetCircleSquare;
            MyDelegate length = circle.GetCircleLength;
            MyDelegate volume = circle.GetSphereVolume;

            Console.WriteLine($"Square: {square.Invoke(10)}");
            Console.WriteLine($"Length: {length.Invoke(10)}");
            Console.WriteLine($"Volume: {volume.Invoke(10)}");

            //Task 4

            GetGreeting getGreeting = () =>
            {
                if (DateTime.Now.Hour >= 4 && DateTime.Now.Hour <= 12)
                {
                    GoodMorning();
                }

                if (DateTime.Now.Hour >= 13 && DateTime.Now.Hour <= 17)
                {
                    GoodDay();
                }

                if (DateTime.Now.Hour >= 18 && DateTime.Now.Hour <= 21)
                {
                    GoodEvening();
                }

                if (DateTime.Now.Hour >= 22 && DateTime.Now.Hour <= 3)
                {
                    GoodNight();
                }
            };

            getGreeting.Invoke();
        }
        public static void SayGreetings()
        {
            GetGreeting getGreeting = _dictionary.First(item => DateTime.Now.Hour <= item.Key).Value;

            getGreeting();
        }