Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.06.2016, 20:36   #1
Novichok2016
Пользователь
 
Регистрация: 02.06.2016
Сообщений: 15
По умолчанию Работа с текстом

Помогите, пожалуйста, исправить программу... Задание такое: Задан текст. По правилам пунктуации пробел может стоять после, а не перед каждым из следующих знаков: . , ; : ! ?. Проверить данный текст на соблюдение этих правил и при необходимости исправить.

Т.е. нужно:
1) оставить пробел между словами в предложении
2) если пробел стоит перед знаками . , ; : ! ? - удалить его
3) если перед знаками . , ; : ! ? нет пробела - добавить его

Программа работает,но неправильно - удаляет абсолютно все пробелы.

Код:
#include "stdafx.h"
#include "conio.h"
#include "stdio.h"
#include <iostream>
#include <string>

using namespace std;

string posle(".,;:!?)]}"); //по условию ЭТО после 
string pered = ("([{"); // ЭТО перед 
string probel = ("/s"); //пробел, табуляция, перевод строки 

int main()
{
	setlocale(LC_ALL, "Russian");
	string st = "Hbg vjg dh.Sljh fhg:   hedgv b.  Ffjns shja.";
	cout << endl << "Текст: " << st << endl;
	cout << endl << "Проверка текста на соблюдение пунктационных правил... "  << endl;
	for (int i = st.length() - 2; i > 0; --i)
		if (st[i] == ' ' && (pered.find(st[i - 1] != string::npos) || posle.find(st[i + 1] != string::npos)))
			st.erase(i, 1);
	cout << endl << "Исправленный текст: " << st << endl;
	getchar();
	return 0;
}
Novichok2016 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
работа с текстом nejimakc Помощь студентам 6 09.11.2010 17:37
Работа с текстом cinik Помощь студентам 1 22.01.2010 21:48
Работа с текстом MSD Общие вопросы Delphi 28 05.05.2009 17:56
работа с текстом... Poll Помощь студентам 5 23.01.2009 11:43
Работа с текстом.[C] DropYourWeapon Общие вопросы C/C++ 3 15.10.2008 21:55