Вывести только те слова, которые встречаются в тексте ровно один раз - C# (194337)

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

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

Добрый день! Помогите плз подкорректировать так, чтобы работало правильно, а именно: если в строке мы берем очередное слово, которое мы проверили ранее, оно не выводится. То есть, если у нас строка "раз два два раз", у нас ничего не выводится. В моем же случае выводится "два раз"
 StringBuilder InitialStr = new StringBuilder("раз два два три три раз");
            Console.WriteLine("Исходная строка: " + InitialStr + "\n");
            for (int i = 0; i < InitialStr.Length; )
                if (char.IsPunctuation(InitialStr[i])) InitialStr.Remove(i, 1);
                else ++i;
            Console.WriteLine("Измененная строка: " + InitialStr + "\n");
            string str = InitialStr.ToString();
            str = str.Trim();
            int k;
            Console.WriteLine("Одиночные слова: ");
            string[] word = str.Split(' ');
            for (int i = 0; i < word.Count(); ++i) // берем итое слово
            {
                k = 0;
                for (int j = i + 1; j < word.Count()-1; ++j) // берем следующее за итым слово
                    if (word[i] == word[j]) ++k; // если следующее слово равняется итому, то к+1
                if (k == 0) Console.WriteLine(word[i]); // если не найдено совпадений, выводим слово
            }
            Console.ReadKey();

Решение задачи: «Вывести только те слова, которые встречаются в тексте ровно один раз»

textual
Листинг программы
        static void Main(string[] args)
        {
            string data = "раз два два три раз четыре пять";
            var result = data.Split(new[] {' '}, StringSplitOptions.RemoveEmptyEntries)
                .GroupBy(x => x)
                .Where(x => x.Count() == 1)
                .Select(x => x.Key);
            foreach (var item in result)  Console.Write(item + " ");
            Console.ReadLine();
        }

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


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

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

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