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

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

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

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

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

textual
Листинг программы
   
        static bool HasAlphabeticalOrder(string text)
        {
            text = text.Trim(new char[] { ' ', '.', ',' });
            for (int i = 1; i < text.Length; i++)
            {
                if (text[i - 1] != text[i] - 1)
                {
                    return false;
                }
            }
            return true;
        }
        static void Main(string[] args)
        {
            String text = "udhi uhidug uygd abc gutfyf abcde khgdfjg";
            Char delimiter = ' ';
            String[] substrings = text.Split(delimiter);
  
            List<string> list = new List<string>();
            foreach (var substring in substrings)
                if (HasAlphabeticalOrder(substring))
                      list.Add(substring);
               
            list.Sort();
            foreach (var str in list)
                Console.WriteLine("{0} ", str);
                
        }

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


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

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

5   голосов , оценка 4.6 из 5
Похожие ответы