Как найти в строке слово, в котором буквы идут последовательно по латинскому алфавиту - C#

Узнай цену своей работы

Формулировка задачи:

Допустим дана строка: udhi uhidug uygd abc gutfyf abcde khgdfjg... Выписать слова abc, abcde и так до конца алфавита с помощью юникода. Но так, чтобы они начинались с A и заканчивались Z, а не в разброс.

Решение задачи: «Как найти в строке слово, в котором буквы идут последовательно по латинскому алфавиту»

textual
Листинг программы
  1.    
  2.         static bool HasAlphabeticalOrder(string text)
  3.         {
  4.             text = text.Trim(new char[] { ' ', '.', ',' });
  5.             for (int i = 1; i < text.Length; i++)
  6.             {
  7.                 if (text[i - 1] != text[i] - 1)
  8.                 {
  9.                     return false;
  10.                 }
  11.             }
  12.             return true;
  13.         }
  14.         static void Main(string[] args)
  15.         {
  16.             String text = "udhi uhidug uygd abc gutfyf abcde khgdfjg";
  17.             Char delimiter = ' ';
  18.             String[] substrings = text.Split(delimiter);
  19.  
  20.             List<string> list = new List<string>();
  21.             foreach (var substring in substrings)
  22.                 if (HasAlphabeticalOrder(substring))
  23.                       list.Add(substring);
  24.                
  25.             list.Sort();
  26.             foreach (var str in list)
  27.                 Console.WriteLine("{0} ", str);
  28.                
  29.         }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4.6 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы