Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 5.00
_Лето_
1 / 1 / 0
Регистрация: 03.11.2013
Сообщений: 68
#1

Расставить между словами пробелы - как определить, где именно поставить пробел - C++

25.08.2014, 23:40. Просмотров 2237. Ответов 15
Метки нет (Все метки)

Всем доброго дня. Увидел задачу: нужно убрать пробелы между словами, чтобы получился слитный текст. Как это сделать - вполне понятно. Но мне просто стало интересно, как можно реализовать эту задачу в обратную сторону? Допустим, нужно наоборот расставить пробелы между словами, которые написаны слитно. И тут я застрял...

Как это можно сделать? И какую библиотеку нужно для этого применять? Пожалуйста, если кто-то знает, подскажите!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.08.2014, 23:40
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Расставить между словами пробелы - как определить, где именно поставить пробел (C++):

Как поставить пробел между числом и результатом? - C++
int a; a=2; cout<<"Chislo"<<" Kvadrat"<<" Kyb"<<endl; cout<< a <<a * a<<a * a * a<<endl; system("pause"); return 0; ...

Убрать в текстовом файле ненужные пробелы, оставив между словами по одному, между предложениями по два. - C++
Мое задание: убрать в текстовом файле ненужные пробелы, оставив между словами по одному, между предложениями по два. Вот программа...

Добавить пробел между словами - C++
проблема, как добавить в конце проги чтобы было пробела между словами #include <stdafx.h> #include <stdlib.h> int main() { ...

Пробелы между словами\предложениями - C++
Помогите с заданием: Дан произвольный текст. Отредактировать текст так, чтобы: а) между словами был ровно один пробел; б)...

В строке между словами вставить вместо пробела запятую и пробел - C++
В строке между словами вставить вместо пробела запятую и пробел.вывести все слова, начинающиеся на букву Z. Добавлено через 13 минут ...

В строке между словами вставить вместо пробела запятую и пробел - C++
как в строке между словами вставить вместо пробела запятую и пробел? Добавлено через 2 минуты на с++.

15
John Prick
801 / 734 / 145
Регистрация: 27.07.2012
Сообщений: 2,107
Завершенные тесты: 3
25.08.2014, 23:43 #2
Вы думаете, есть какая-то специальная библиотека по расстановке пробелов?
0
_Лето_
1 / 1 / 0
Регистрация: 03.11.2013
Сообщений: 68
25.08.2014, 23:43  [ТС] #3
John Prick, не. Для работы с текстом
0
Sergio Leone
2455 / 1100 / 402
Регистрация: 07.06.2014
Сообщений: 3,259
25.08.2014, 23:45 #4
посмотрите тему: Как разбить сплошную строку на слова?
0
ValeryS
Модератор
6654 / 5063 / 470
Регистрация: 14.02.2011
Сообщений: 16,931
25.08.2014, 23:45 #5
_Лето_,
а поиском не пробовал поискать?
эта тема уже страниц на пять
Как разбить сплошную строку на слова?
0
John Prick
801 / 734 / 145
Регистрация: 27.07.2012
Сообщений: 2,107
Завершенные тесты: 3
25.08.2014, 23:47 #6
_Лето_, Если из предложения убрать все пробелы - получится просто набор букв. Как их вернуть назад? Да никак, собственно. Разумного решения у этой задачи не будет. Это всё равно, что заложить все окна и двери в доме кирпичём, а потом пытаться сделать их в том же месте.
0
_Лето_
1 / 1 / 0
Регистрация: 03.11.2013
Сообщений: 68
25.08.2014, 23:49  [ТС] #7
Sergio Leone, да мне не нужен русский, можно и с английским работать для начала

Добавлено через 1 минуту
John Prick, просто я думал, что можно как-нибудь сделать, чтобы программа шла по строке и сравнивала то, что читает, с каким-нибудь огромным словарем и определяя, что слова раздельные, разделяла бы их пробелом

Добавлено через 19 секунд
ValeryS, да искал. Нет ничего подобного
0
ValeryS
Модератор
6654 / 5063 / 470
Регистрация: 14.02.2011
Сообщений: 16,931
25.08.2014, 23:57 #8
Цитата Сообщение от _Лето_ Посмотреть сообщение
ValeryS, да искал. Нет ничего подобного
ты тему то смотрел по ссылке?
там как раз и обсуждается что невозможно это с кондачка решить
Пока решений не найдено
а ты хочешь готовую библиотеку
создай, и тебе при жизни золотой памятник поставят

Добавлено через 1 минуту
Цитата Сообщение от _Лето_ Посмотреть сообщение
чтобы программа шла по строке и сравнивала то, что читает, с каким-нибудь огромным словарем и определяя, что слова раздельные, разделяла бы их пробелом
как правильно
Цитата Сообщение от ValeryS Посмотреть сообщение
вспомнил еще один каламбур
"гражданиномнепаласчитаетсячеловекзачатыйнепальцеминепалкой"
как читать будем
"гражданином Непала считается человек зачатый непальцем и непалкой"
или
"гражданином Непала считается человек зачатый не пальцем и не палкой"
0
-NEURON-
Заблокирован
26.08.2014, 00:01 #9
ТС, если ты сольёшь текст воедино и у тебя не будет хотя бы звуковой записи данного транскрипта для распознавания речи - то обратно ты никак не вернёшь пробелы, т.к. данный процесс не обратим.
0
_Лето_
1 / 1 / 0
Регистрация: 03.11.2013
Сообщений: 68
26.08.2014, 00:01  [ТС] #10
ValeryS,
Цитата Сообщение от ValeryS Посмотреть сообщение
как правильно
Сообщение от ValeryS
вспомнил еще один каламбур
"гражданиномнепаласчитаетсячеловекзачатыйнепальцеминепал кой"
как читать будем
"гражданином Непала считается человек зачатый непальцем и непалкой"
или
"гражданином Непала считается человек зачатый не пальцем и не палкой"
Это понятно, я уже видел это.
Значит, пока что это еще нереально... Хорошо, будем думать
0
ValeryS
Модератор
6654 / 5063 / 470
Регистрация: 14.02.2011
Сообщений: 16,931
26.08.2014, 00:08 #11
Цитата Сообщение от _Лето_ Посмотреть сообщение
Значит, пока что это еще нереально...
это вообще не реально, сжатие с потерей информации
чтобы понять это, я переформулирую задачу
"можно ли восстановить текст из которого выброшены все гласные буквы"
0
gazlan
3132 / 1908 / 285
Регистрация: 27.08.2010
Сообщений: 5,132
Записей в блоге: 1
26.08.2014, 00:52 #12
Цитата Сообщение от ValeryS Посмотреть сообщение
"можно ли восстановить текст из которого выброшены все гласные буквы"
С ивритом не сталкивались?
0
ValeryS
Модератор
6654 / 5063 / 470
Регистрация: 14.02.2011
Сообщений: 16,931
26.08.2014, 01:05 #13
Цитата Сообщение от gazlan Посмотреть сообщение
С ивритом не сталкивались?
как то нет даже идиш не знаю
Меня спросили на иврите:
— Вы на иврите говорите?
А я в ответ на чистом идиш:
— Ты че, в натуре, сам не видишь?!
(с) И. Иртеньев
но как это отменяет
Цитата Сообщение от ValeryS Посмотреть сообщение
сжатие с потерей информации
1
gazlan
3132 / 1908 / 285
Регистрация: 27.08.2010
Сообщений: 5,132
Записей в блоге: 1
26.08.2014, 02:49 #14
Цитата Сообщение от ValeryS Посмотреть сообщение
но как это отменяет сжатие с потерей информации
Не могу поклясться, что отменяет :-), но это письменность (библейский иврит), не использовавшая гласных - они восстанавливались из контекста.

Точно также, современный текст с многочисленными ошибками (ex.: результат OCR) может быть практически восстановлен с использованием спеллчекера. Замена в тексте буквы 'ё' на 'е', по большей части, нечувствительна для носителя языка. Другой общеизвестный пример - коды, исправляющие ошибки.

Иными словами, потеря гласных - не такая большая потеря. А (частичное) восстановление пробелов, я уже демонстрировал в другой теме.
0
ValeryS
Модератор
6654 / 5063 / 470
Регистрация: 14.02.2011
Сообщений: 16,931
26.08.2014, 08:48 #15
gazlan,
все правильно человеческий язык избыточен, так скажем помехозащен, но есть предел после которого информация уже не восстанавливается
Цитата Сообщение от gazlan Посмотреть сообщение
они восстанавливались из контекста.
вот ключевое слово
а кто будет определять этот контекст?

можно привести пример из шпионских фильмов, как по нескольким шифровкам определяют текст, а иногда не могут, хорошо расписано у К. Дойла "Пляшущие человечки", но есть вероятность что, определят неправильно

или другой пример сжатие джипег или мп3, потеря информации но человек видит/слышит, что пытались до него донести
но если взять сильное сжатие , то картинку уже не увидишь, по крайней мере мелкие детали
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.08.2014, 08:48
Привет! Вот еще темы с ответами:

В строке между словами вставить вместо пробела запятую и пробел - C++
скажите, в чем ошибка В строке между словами вставить вместо пробела запятую и пробел. #include <stdafx.h> #include <iostream> ...

Азбука Морзе, добавить пробел между словами при декодировании - C++
Написал "программу" для перевода кода Морзе на Английский и наоборот, но никак не могу понять как сделать чтобы между словами ставился...

Выделить в тексте лишние пробелы между словами - C++
ЕЩе одна задачка из Павловской... Прошу помощи!!! Если вам лень решать всю задачу, то меня очень интересует второй пункт... Но буду рад...

Строка: Удалить лишние пробелы между словами - C++
Задание: нужно удалить лишние пробелы между словами (если один пробел, то его нужно оставить). # include <conio.h> # include...


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

Или воспользуйтесь поиском по форуму:
15
Yandex
Объявления
26.08.2014, 08:48
Ответ Создать тему
Опции темы

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