7 / 7 / 1
Регистрация: 22.12.2012
Сообщений: 173
|
|
1 | |
Работа со строчками (вывести в столбец все слова без повторений и количеством использования каждого слова)05.06.2013, 23:11. Показов 3374. Ответов 11
Метки нет (Все метки)
Ввести строку. Учитывая что строка может содержать слова которые повторяются, вывести в столбец все слова без повторений и количеством использования каждого слова. Регистр букв можно не учитывать если так будет легче написать программу.
Например строка: Hello, World! This is the test program. Bye World. Должно вывести: Hello 1 World 2 This 1 is 1 the 1 test 1 program 1 Bye 1 уже третий день мучаюсь, помогите пожалуйста..
0
|
05.06.2013, 23:11 | |
Ответы с готовыми решениями:
11
Напечатать все различные слова и для каждого слова указать количество повторений Вывести все слова в столбик без повторений Вывести слова в столбец с указанием длины каждого слова Вывести в консоль все слова из текста (без повторений) в алфавитном порядке и с заглавной буквы |
Форумчанин
8215 / 5045 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
|
||||||
05.06.2013, 23:15 | 2 | |||||
1
|
7 / 7 / 1
Регистрация: 22.12.2012
Сообщений: 173
|
|
05.06.2013, 23:36 [ТС] | 3 |
MrGluck, не работает. vs2010 выдает 6 ошибок...
0
|
Форумчанин
8215 / 5045 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
|
|
05.06.2013, 23:45 | 4 |
gorus95,
У меня все работает, просто код написан с использованием стандарта С++11 и требует компилятора поновее. Добавлено через 2 минуты Замените for-цикл по коллекции на обычный std::for_each и замените обычный ассоциативный массив (unordered_map) на отсортированный (map), иначе доступа к элементу по ключу, а не индексу не получите. Не по теме: Эх, в С++ бы ассоциат. массивы из PHP (как элемент ситаксиса)...
0
|
7 / 7 / 1
Регистрация: 22.12.2012
Сообщений: 173
|
|
05.06.2013, 23:46 [ТС] | 5 |
MrGluck, я бы с радостью, но сдавать мне это нужно будет вообще на vs2008.
да и тем более с такого кода я понимаю смысл всего нескольких строк, а мне еще нужно будет объяснить как оно работает..(
0
|
Форумчанин
8215 / 5045 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
|
||||||
06.06.2013, 00:02 | 6 | |||||
http://www.cplusplus.com/reference/map/map/
0
|
979 / 196 / 33
Регистрация: 26.09.2012
Сообщений: 2,041
|
||||||
06.06.2013, 00:45 | 7 | |||||
А от мое элегантно решение:
0
|
MrGluck
|
06.06.2013, 01:21
#9
|
2
|
7 / 7 / 1
Регистрация: 22.12.2012
Сообщений: 173
|
||||||
06.06.2013, 12:52 [ТС] | 10 | |||||
ninja2, спасибо большое!
Добавлено через 14 минут ninja2, можете еще немного объяснить этот кусок кода? Кликните здесь для просмотра всего текста
Добавлено через 8 минут если ввести 3 и больше одинаковых слов подряд, оно выводит информацию и зависает в бесконечном цикле... например, попробуйте ввести hello hello hello результат будет hello - 3 но программа не закончится...
0
|
979 / 196 / 33
Регистрация: 26.09.2012
Сообщений: 2,041
|
||||||
06.06.2013, 15:27 | 11 | |||||
Отак от будет нормально работать
Это так гамнокодец, лучше конечно строку разбить на слова записать в массив, потом подсчитать количество слов и записать в другой массив их количество, затем ужи вывесит. Так лучше б было б.
0
|
7 / 7 / 1
Регистрация: 22.12.2012
Сообщений: 173
|
|
06.06.2013, 22:39 [ТС] | 12 |
ninja2, я как раз и пытался так сделать, но потратил кучу времени, и ничего толкового не получилось(
спасибо еще раз, так даже лучше)
0
|
06.06.2013, 22:39 | |
06.06.2013, 22:39 | |
Помогаю со студенческими работами здесь
12
Считать с консоли имя файла и вывести на экран все слова из него без повторений Вывести слова текста с количеством повторений в данном тексте Вывести каждое слово из строки с количеством повторений слова в строке Программа должна в заданном тексте найти каждое слово и вывести все слова в столбец (слова разделяются разделителями) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |