0 / 0 / 0
Регистрация: 01.01.2013
Сообщений: 39
1

Получить последовательность символов, которая определяется следующим образом — LINQ

06.05.2018, 22:30. Показов 4451. Ответов 1
Метки нет (Все метки)

Здравствуйте. Практикую написание LINQ-запросов. Есть такая задача:

Дана последовательность непустых строк. Получить последовательность символов, которая определяется следующим образом: если соответствующая строка исходной последовательности имеет нечетную длину, то в качестве символа берется первый символ этой строки; в противном случае берется последний символ строки. Отсортировать полученные символы по убыванию их кодов.

Как можно через LINQ-запрос сделать вот эту часть задания: если соответствующая строка исходной последовательности имеет нечетную длину, то в качестве символа берется первый символ этой строки; в противном случае берется последний символ строки?

Я не знаю, как через Select или SelectMany это сделать.

Здесь я попробовал выполнить условие ЕСЛИ в задаче:
C#
1
2
3
IEnumerable<string> a = GetEnumerableString().ToList();
 
var res = a.Where(x => x.Length % 2 != 0).SelectMany(x => x.ToArray(), (str, ch) => str[0]);
Всё правильно делает относительно нужных символов, но почему-то нужные символы у меня дублируются. Теперь мне нужно как-то избавиться от ненужных дублей через .Distinct() (да и вообще, можно ли как-то без .Distinct() сформировать последовательность?) и добавить условие ИНАЧЕ в задаче.
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.05.2018, 22:30
Ответы с готовыми решениями:

Последовательность многочленов T0(x),T1(x),. определяется следующим образом
Последовательность многочленов T0(x),T1(x),..... определяется следующим...

Дано целое число N (>2). Последовательность вещественных чисел AK определяется следующим образом
Имя входного файла zс37.in Имя выходного файла zc37.out Дано целое число N (&gt;2)....

Дано целое число N (> 0). Последовательность вещественных чисел AK определяется следующим образом: A0 = 2,
Дано целое число N (&gt; 0). Последовательность вещественных чисел AK определяется следующим образом:...

Дано вещественное число ε (> 0). Последовательность вещественных чисел AK определяется следующим образом: A1 = 2, AK = 2 + 1/AK–1, K = 2, 3, … . Найти
Дано вещественное число ε (&gt; 0). Последовательность вещественных чисел AK определяется следующим...

1
3393 / 2409 / 1161
Регистрация: 14.08.2016
Сообщений: 8,079
07.05.2018, 00:38 2
C#
1
var res = a.Select(x => x%2 == 0 ? x[x.Length - 1] : x[0]);
писАл тут же, могут быть очепятки
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.05.2018, 00:38
Помогаю со студенческими работами здесь

Получить последовательность символов (используя LINQ)
Даны целое число К (&gt; 0) и последовательность строк А. Получить последовательность символов,...

Д-заштрихованная часть плоскости. Пусть V определяется по х и у следующим образом:
Само задание гласит: Д-заштрихованная часть плоскости. Пусть V определяется по х и у следующим...

По матрице A=||a[i,j]|| размером 10х10 построить матрицу B=||b[i,j]|| того же размера, где b[i,j] определяется следующим образом
По матрице A=||a|| размером 10х10 построить матрицу B=||b|| того же размера, где b определяется...

Построить последовательность чисел следующим образом
Взят целое число i&gt;1.Следующий член последовательности равен i/2,если i четное,и 3*i+1,если i...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru