Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
0 / 0 / 0
Регистрация: 03.11.2018
Сообщений: 72
1

Определить, какие буквы в словах совпадают чаще: первые, последние или средние

09.02.2019, 20:26. Просмотров 370. Ответов 1
Метки нет (Все метки)

Дан массив символов, содержащий слова на латинице, разделенные пробелами. Определить, какие буквы в словах совпадают чаще: первые, последние или средние. Позиция средней буквы в слове определяется по формуле:
поз_средн буквы =длина_слова div 2+1,где div –операция целочисленного деления.
Помогите ,хоть половину
С#
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.02.2019, 20:26
Ответы с готовыми решениями:

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

Определить, какие буквы слов совпадают чаще: первые, последние или средние (Pascal -> C++)
Задача: Дан текст, состоящий из слов, разделенных пробелом. Определить, какие буквы совпадают...

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

Определить, какие буквы встречаются чаще - гласные или согласные.
Ввести свою фамилию, имя и отчество одной строкой. Определить, какие буквы встречаются чаще -...

1
70 / 44 / 28
Регистрация: 14.02.2017
Сообщений: 126
10.02.2019, 01:51 2
Добрый день!

Немного корявенько, с использованием Dictionary<string, int>, а также Regex (для разнообразия). Исходная строка именно в виде строки - "массив символов, содержащий слова на латинице, разделенные пробелами": соответственно ввод этого массива для дальнейшей обработки нужно реализовать дополнительно.

Вот то, что в методе Main:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
            Dictionary<string, int> dictFirst = new Dictionary<string, int>();
            Dictionary<string, int> dictLast = new Dictionary<string, int>();
            Dictionary<string, int> dictMiddle = new Dictionary<string, int>();            
            List<string> myMiddleElement = new List<string>();
            string patternFirst = @"\b\w";
            string patternLast = @"\w\b";            
            string input = @"gfsa fghsdgh jkgfhj dggk sdtryyk dgjgfkd fkaer luiohs thntyryh";
 
            foreach (Match m in Regex.Matches(input, patternFirst))
            {
                int res;
                if (dictFirst.TryGetValue(m.Value, out res))
                {
                    dictFirst[m.Value] += 1;
                }
                else
                {
                    dictFirst.Add(m.Value, 1);
                }                
            }
            Console.WriteLine("Количество первых букв:");
            foreach (string i in dictFirst.Keys)
            {
                Console.WriteLine($"- буква {i} встречается {dictFirst[i]} раз");
            }
    
            foreach (Match m in Regex.Matches(input, patternLast))
            {
                int res;
                if (dictLast.TryGetValue(m.Value, out res))
                {
                    dictLast[m.Value] += 1;
                }
                else
                {
                    dictLast.Add(m.Value, 1);
                }
            }
            Console.WriteLine("Количество последних букв:");
            foreach (string i in dictLast.Keys)
            {
                Console.WriteLine($"- буква {i} встречается {dictLast[i]} раз");
            }
 
            foreach (string el in input.Split(' '))
            {
                string m = Convert.ToString(el.ElementAt(el.Count() / 2 + 1));
                int res;
                if (dictMiddle.TryGetValue(m, out res))
                {
                    dictLast[m] += 1;
                }
                else
                {
                    dictMiddle.Add(m, 1);
                }                
            }
            Console.WriteLine("Количество \"средних\" букв:");
            foreach (string i in dictMiddle.Keys)
            {
                Console.WriteLine($"- буква {i} встречается {dictMiddle[i]} раз");
            }
            Console.ReadKey();
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.02.2019, 01:51

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Определить, какие буквы встречаются чаще - гласные или согласные
Ввести свою фамилию, имя и отчество одной строкой. Определить, какие буквы встречаются чаще -...

Определить число слов, у которых первые две буквы совпадают
Строка символьная Помогите исправить, эта не работает # include &lt;stdio.h&gt; # define IN 1 #...

Найти количество слов, у которых первые и последние символы совпадают.
Из файла input.txt считайте строку символов S. Число символов, входящих в строку S, не более 255....

Определить какие символы встречаются чаще «!» или «?»
Условие : Для заданной строки, определить какие символы встречаются чаще «!» или «?». Заранее...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.