Напечатать все слова текста, отличные от последнего слова, оставив в них только первые вхождения каждой буквы - C#

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

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

Дан текст, напечатать все слова, отличные от последнего слова, предварительно преобразовав каждое из них по следующему правилу: оставить в слове только первые вхождения каждой буквы.

Решение задачи: «Напечатать все слова текста, отличные от последнего слова, оставив в них только первые вхождения каждой буквы»

textual
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4.  
  5. namespace ConsoleApplication
  6. {
  7.     class Program
  8.     {
  9.         static void Main(string[] args)
  10.         {
  11.             string text = "elephant element acacept regard aaacccceepptt shell acceppt test accept";
  12.             List<string> format = new List<string>();
  13.  
  14.             foreach (string word in text.Split(' '))
  15.                 format.Add(TransformWord(word));
  16.  
  17.             foreach (string word in format)
  18.                 if (word != format.Last())
  19.                     Console.Write(word + " ");
  20.  
  21.             Console.ReadKey();
  22.         }
  23.  
  24.         static string TransformWord(string target)
  25.         {
  26.             string result = String.Empty;
  27.             for (int i = target.Length - 1; i >= 0; i--)
  28.                 if (!target.Substring(0, i).Contains(target[i]))
  29.                     result += target[i];
  30.  
  31.             char[] array = result.ToCharArray();
  32.             Array.Reverse(array);
  33.             return new String(array);
  34.         }
  35.     }
  36. }

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


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

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

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

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

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

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