Определить количество слов в строке, начинающихся и оканчивающихся одной и той же буквой - 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);
            }
 
        }
    }
}

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


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

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

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