Создание рядов Фибоначчи с использованием лямбда-оператора

Я пытаюсь решить вопрос в Project Euler, который создает серию Фибоначчи до 4 миллионов и складывает четные числа, которые входят в серию , это, очевидно, очень простая задача, и я отвечаю на нее через 2 минуты,

int result=2;
int first=1;
int second=2;
int i=2;

while (i < 4000000)
{
    i = first + second;

    if (i % 2 == 0)
    {
       result += i;
    }

    first = second;
    second = i;
 }

 Console.WriteLine(result);

но я хочу сделать это с помощью лямбда-выражения

Мои усилия идут примерно так же, как

DelType del = (oldVal, newVal) =>((oldVal==0?1:newVal  + newVal==1?2:oldVal+newVal) % 2 == 0) ? oldVal + newVal : 0;

int a=del(0, 1);

Пожалуйста, подскажите, как это сделать

5
задан marc_s 25 December 2011 в 11:13
поделиться