Форум программистов, компьютерный форум, киберфорум
LINQ
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/13: Рейтинг темы: голосов - 13, средняя оценка - 5.00
141 / 181 / 44
Регистрация: 25.04.2012
Сообщений: 2,623
Записей в блоге: 5
1

Как обращаться к IGrouping<int,int> в подзапросе

18.02.2015, 09:23. Показов 2390. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
C#
1
2
int[] B = new int[6] {  111, 22, 33, 43,54,66 };
var w = B.GroupBy(x => x % 10);
При продолжении этого запроса, например с помощью SelectMany предлагается работать с
C#
1
Func<IGrouping<int,int>,IEnumerable<TResult>>
. Какие лямбда-выражения можно подставлять в качестве такого аргумента?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.02.2015, 09:23
Ответы с готовыми решениями:

Какая из этих функций int Q(int w) int W(int y,int u,int i) сработает быстрее?
Если есть 2 функции(простые или перегруженные) к примеру Q(int w) int W(int y,int u,int i)или int...

Ошибка: cannot convert 'int (*)[50]' to 'int*' for argument '1' to 'void vvod2m(int*, int*, int*, char)'Х2
Матрицы An1*m1 и Bn2*m2 вводить с клавиатуры (размерности &gt;3, m1=n2). Выполнять через подпрограммы....

Не работает перегрузка индексного оператора [], вместо [int][int] почему то нужно ставить [0][int][int]
#include&lt;iostream&gt; #include&lt;string&gt; #include&lt;vector&gt; #include&lt;algorithm&gt; #include&lt;ctime&gt;...

Размерность int или как из signed int сделать unsigned int?
Добрый день. Есть старая база уже с некоторыми данными. При развёртывании её на одном из тестовых...

5
Заблокирован
18.02.2015, 11:53 2
Лучший ответ Сообщение было отмечено Alex9 как решение

Решение

Цитата Сообщение от Alex9 Посмотреть сообщение
. Какие лямбда-выражения можно подставлять в качестве такого аргумента?
Alex9, любые. Но вы должны понимать, что на входе будет коллекция групп.
Например:
C#
1
2
3
4
5
6
7
8
9
           
            int[] B = new int[6] { 111, 22, 33, 43, 54, 66 };
            var w = B.GroupBy(x => x % 10).Where(x => x.All(f => f % 2 != 0));
            foreach (var x in w)
            {
                foreach (var y in x)
                    Console.Write("{0} ", y);
                Console.WriteLine();
            }
Код
111
33 43
.SelectMany(x => x) сразу на IGrouping вызывать нет смысла. Т.е. такой запрос:
C#
1
B.GroupBy(x => x % 10).SelectMany(x => x);
вернет первоначальную последовательность.
1
141 / 181 / 44
Регистрация: 25.04.2012
Сообщений: 2,623
Записей в блоге: 5
18.02.2015, 12:00  [ТС] 3
А какой селектор мне лучше применить, чтобы получить пары, состоящие из ключа группы и суммы элементов этого ключа?
0
Заблокирован
18.02.2015, 12:05 4
Лучший ответ Сообщение было отмечено Alex9 как решение

Решение

Цитата Сообщение от Alex9 Посмотреть сообщение
А какой селектор мне лучше применить, чтобы получить пары, состоящие из ключа группы и суммы элементов этого ключа?
Alex9,
C#
1
2
3
4
                      int[] B = new int[6] { 111, 22, 33, 43, 54, 66 };
            var w = B.GroupBy(x => x % 10).Select(x => new { key = x.Key, sum = x.Sum()});
            foreach (var x in w)
                Console.WriteLine("{0} - {1}", x.key, x.sum);
Код
1 - 111
2 - 22
3 - 76
4 - 54
6 - 66
1
141 / 181 / 44
Регистрация: 25.04.2012
Сообщений: 2,623
Записей в блоге: 5
18.02.2015, 16:49  [ТС] 5
Последний Select что перечисляет?
Я пробую найти максимальный элемент в каждой группе, но ничего не выбирается.
C#
1
2
var w = B.GroupBy(x => x % 10).OrderBy(x => x)
                .Select(x => new { a = x.Key, b = x.Max() });
0
Заблокирован
18.02.2015, 16:56 6
Лучший ответ Сообщение было отмечено Alex9 как решение

Решение

Alex9, а что вы хотите добиться этой строчкой?:
C#
1
.OrderBy(x => x)
вы должны сортировать по какому-то критерию, например, по ключу:
C#
1
2
            var w = B.GroupBy(x => x % 10).OrderBy(x => x.Key)
                 .Select(x => new { a = x.Key, b = x.Max() });
1
18.02.2015, 16:56
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.02.2015, 16:56
Помогаю со студенческими работами здесь

Error LNK2019: unresolved external symbol "public: __thiscall Vector<int>::Vector<int>(int,int,int)" (?0?$Vec
Вот есть заголовочный файл // Заголовочный файл Vector.h #ifndef VECTOR_H #define VECTOR_H ...

[C++ Error] Unit2.cpp(22): E2034 Cannot convert 'int (*)(int,int *)' to 'int'
Всем привет! Пожалуйста , помогите , почему выдает ошибку Unit2.cpp(22): E2034 Cannot convert 'int...

Dictionary<int,List<int>> и IReadOnlyDictionary<int,IReadOnlyList<int>>
Народ, столкнулся с такой ситуацией. Есть Переменная Dictionaty&lt;int,List&lt;int&gt;&gt; Dic = new...

void _fastcall TForm1::Vector(int x0, int y0, int a, int l);
//--------------------------------------------------------------------------- #include...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru