113

Jul 03, 2009 00:51

Решил 113 задачу. Кто догадается, что возвращает функция L - тот молодец.

static Func L(double[] xs, double[] ys ( Read more... )

извне, ?, projecteuler

Leave a comment

Comments 10

norniel June 29 2009, 23:26:42 UTC
А что делает функция Select, Agregate, стрелка(толком не помню) и совсем загадочная точка.

Reply

der_waldgeist June 30 2009, 04:54:53 UTC
Select выбирает из коллекции элемент и как-то его преобразует. Например, new int[1,2,3].Select(x=>x*2) вернет коллекцию {2,4,6}.
Aggregate агрегирует коллекцию, то есть как-то аккумулирует ее значения. Например new int[1,2,3].Aggregate(1, (soFar, el)=>soFar*el) вернет 1*2*3=6.
Стрелка - лямбда-выражение, анонимная функция.
Загадочная точка - это, как я понимаю, просто вызов функций друг за другом a.b().c().

Reply

norniel June 30 2009, 08:53:45 UTC
Нет. Эту точку я знаю. Меня интерисует вырожение вида yi.yi. И первый параметр функции Agregate.

Reply

der_waldgeist June 30 2009, 09:02:13 UTC
Нет, тебя интересует выражение вида new {i, yi}. Это создание анонимного типа, у которого будет два свойства i и yi

То есть:
int i=1;
int yi =2;
var y = new {i, yi};
y.i == 1
y.yi == 2

А yi.yi просто совпало, переменная yi, у которой есть свойство yi.

Первый параметр Aggregate - зерно, начальное значение для агрегирования, soFar для первого элемента коллекции.

Reply


mezhaka July 2 2009, 21:44:26 UTC
ну я подождал два дня. напиши, уж что ли что она возвращает :) для меня. а то хер пойми что она возвращает.

Reply

der_waldgeist July 2 2009, 21:52:39 UTC
Функтор она возвращает. :) Написал в посте.

Reply

mezhaka July 2 2009, 22:13:29 UTC
ну это из сигнатуры видно, что функтор, а вот что оно делает?

Reply

der_waldgeist July 2 2009, 22:15:12 UTC
Читай пост.

Reply


Leave a comment

Up