Определить количество слов в строке, начинающихся и оканчивающихся одной и той же буквой - C#
Формулировка задачи:
Определить количество слов в строке, начинающихся и оканчивающихся одной и той же буквой.
Помогите пожалуйста написать программу. Желательно не сильно за мудрёную в стили вот этой:
Образец:
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { string str1; Console.WriteLine("Введите текст"); str1 = Convert.ToString(Console.ReadLine()); char[] m = str1.ToCharArray(); char a = '.'; int min = str1.Length; for (int i = 0; i < str1.Length; i++) { if ((m[i] == a) & (i < min)) min = i; } int max = 0; for (int j = 0; j < str1.Length; j++) { if ((m[j] == a) & (j > max)) max = j; } int b = max - min; string str2 = str1.Substring(min + 1, b); Console.WriteLine(str2); Console.ReadKey(); } } }
Решение задачи: «Определить количество слов в строке, начинающихся и оканчивающихся одной и той же буквой»
textual
Листинг программы
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace kznyaz { class Program { static void Main(string[] args) { Console.WriteLine("Введите текст"); //string inputString = Console.ReadLine(); string inputString = "word1 wow lnjkdsndsl eejke a asafdgh"; // Всё решение здесь: var words = from word in inputString.Split(null) // Разбивка по пробельным символам Юникода. Если нужны конкретные, пример приведён выше. //where word.Length > 1 // если недопустимы слова из 1 буквы, включить эту строку let start = word.First() let end = word.Last() where start == end select word; Console.WriteLine("В результате слов: {0}", words.Count()); foreach (var word in words) { Console.WriteLine(word); } } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д