Удалить средную букву из самого длинного слова и напечатать все слова на экран - C#
Формулировка задачи:
Дано предложение. Напечатать все его слова, предварительно преобразовав каждое из них по следующему правилу: в самом длинном слове удалить среднюю (средние) буквы. Принять, что такое слово — единственное.
Решение задачи: «Удалить средную букву из самого длинного слова и напечатать все слова на экран»
textual
Листинг программы
- static void Main(string[] args)
- {
- string sentence = "this is your senetnce, and u need 2 split it";
- string[] arr = sentence.Split(new char[] { ' ', '\t', ',', ':' }, StringSplitOptions.RemoveEmptyEntries); // разбиваем на слова
- int maxLength = 0; // храним максималюную длину слова
- int idx = 0; // храним индекс этого слова в массиве
- for (int i = 0; i < arr.Length; i++) // находим самое длинное слова
- if (arr[i].Length > maxLength)
- {
- maxLength = arr[i].Length;
- idx = i;
- }
- int d = arr[idx].Length / 2; // переменная для хранения индекса середины слова, для простоты
- if (arr[idx].Length % 2 == 0) // если длинна делится на 2 без остатка убираем 2 буквы
- {
- arr[idx] = arr[idx].Substring(0, d - 1) + arr[idx].Substring(d + 1, arr[idx].Length - d - 1);
- }
- else // иначе одну
- arr[idx] = arr[idx].Substring(0, d) + arr[idx].Substring(d + 1, arr[idx].Length - d - 1);
- foreach (string s in arr) // отображаем массив строк
- Console.WriteLine(s);
- Console.ReadKey();
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д