Вывести самое короткое и длинное слово в предложении - C#
Формулировка задачи:
using System; using System.Linq; class Demo { static void Main() { string str = "За двумя зайцами погонишься - ни одного кабана не поймаешь."; char[] separators = { ' ', '.', ',', '-' }; var words = str.Split(separators, StringSplitOptions.RemoveEmptyEntries) .OrderBy(n => n.Length).GroupBy(n => n.Length); var min = words.First(); var max = words.Last(); Console.WriteLine("Input: " + str); Console.Write("\nMin words: "); foreach (var i in min) Console.Write(i + " "); Console.Write("\nMax words: "); foreach (var i in max) Console.Write(i + " "); Console.WriteLine(); } }
Решение задачи: «Вывести самое короткое и длинное слово в предложении»
textual
Листинг программы
var s = "введите строку-предложение на русском языке. Вывести самое короткое1|длинное2 слово в предложении (если таких слов несколько, то вывести первое3|последнее4 из них)."; s = new string(s.Where(x => (x > 'А' && x < 'я') || (x == ' ') || (x == '-')).ToArray()); var words = s.Split(' '); words = words.Where(x=>x.Length > 0).ToArray(); var _min = words.Aggregate(words[0], (min, cur) => min.Length < cur.Length ? min : cur); var _max = words.Aggregate(words[0], (max, cur) => max.Length > cur.Length ? max : cur);
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д