Делегат Func, bool, double, double> - C#

Узнай цену своей работы

Формулировка задачи:

Задание: реализуйте пользовательский тип делегата требуемой сигнатуры и выполните с его использованием вызов нескольких методов (с корректной сигнатурой). a) Func<Action<char>, bool, double, double> b) Func<Action<int>, bool, char, string> a)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text.RegularExpressions;
 
namespace Rextester
{
    public class Program
    {
        public static void Main(string[] args)
        {
            Func<Action<char>, bool, double, double> lambda = (f, flag, x) =>
            {
                f('a');
                return (flag)?(2*x):(x*x);
            };
            Action<char> TT = MyFunc;
            Console.WriteLine(lambda(TT, true, 2));
        }
        static void MyFunc(char s) {
            Console.WriteLine(s);
        }
    }
}
Как реализовать b)?

Решение задачи: «Делегат Func, bool, double, double>»

textual
Листинг программы
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace LB1
{
    class Program
    {
        public static void Main(string[] args)
        {
            Func<Action<int>, bool, char, string> lambda = (x, flag, y) =>
            {
                x(9);
                return (flag) ? "flag is true " + y : "flag is false " + y;
            };
            Action<int> TT = MyFunc;
            Console.WriteLine(lambda(TT, true, 'M'));
            Console.WriteLine(lambda(TT, false, 'O'));
            Console.ReadLine();
        }
        static void MyFunc(int s)
        {
            s++;
            Console.WriteLine(s);
        }
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4.3 из 5
Похожие ответы