Метод в качестве возвращаемого параметра - C#

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

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

Никак не получается на C# написать функцию, возвращающую в качестве параметра функцию. На as3 (например), код выглядит примерно так:
Листинг программы
  1. public static function myFunction(arg:Number):Function
  2. {
  3. return function(t:Number):Number {
  4. if (t < 0.5) return 5 * arg;
  5. else return 10 * arg;
  6. }
  7. }
Как реализовать аналогичный функционал на C#? Вдумчивое чтение мануала по System.Func, результатов не дало. =( Завис примерно на таком (нерабочем) варианте:
Листинг программы
  1. public static Func<float> myFunction(float arg)
  2. {
  3. return (t) => {
  4. if (t < 0.5) return 5 * arg;
  5. else return 10 * arg;
  6. }
  7. }

Решение задачи: «Метод в качестве возвращаемого параметра»

textual
Листинг программы
  1.  public static Func<float, float> myFunction(float arg)
  2.         {
  3.             var func = new Func<float, float>((t) =>
  4.                                      {
  5.                                          if (t < 0.5) return 5 * arg;
  6.                                          else return 10 * arg;
  7.                                      });
  8.  
  9.             return func;
  10.         }

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


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

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

9   голосов , оценка 3.889 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы