С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/40: Рейтинг темы: голосов - 40, средняя оценка - 4.88
0 / 0 / 0
Регистрация: 07.12.2015
Сообщений: 3

Как убрать знаки пунктуации?

07.12.2015, 20:41. Показов 8139. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый вечер. Помогите, пожалуйста. Не могу дописать программу, чтобы в тексте убирались знаки пунктуации.
Например, у меня при вводе "тит, тер, тот" выводится только "тот", потому что программа считывает запятую.
Вот сама программа:
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
#include <iostream>
#include <sstream>
 using namespace std;
int main()
{
    string str;
    unsigned int k=0;
    char m; //m - это symbol
    cout << "Enter string: " << endl; 
    getline(cin, str); // вводим текст
    cout << "Enter symbol: "; 
    cin >> m; // вводим букву (symbol)
 
    istringstream s(str); //конструктор istringstream() со строковым аргументом прикрепляет создаваемый объект потока к указанной строке
    while (s >> str)
{   if(m == '.' || m == ':' || m == ',' || m == '?' || m == '!' || m == ';')
                m = ' '; // заменяем знаки пунктуции пробелом
        if ((str[0] == m) && (str[str.length() - 1] == m)) //(str[0] == m) - сравниваем началино строки с символом, (str[str.length() - 1] == m)- сравниваем конец строки с символом 
            cout << "\n" << str << endl; //выводи
        else cout << "\nNo found" << endl; //выводи
}
   system("pause");
    return 0;
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
07.12.2015, 20:41
Ответы с готовыми решениями:

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

Удалить знаки пунктуации из строки
Все что вышло у меня. int main(){ string str; getline(cin, str); for(string::size_type index=0; index!=str.size(); ++index){ ...

Вывести на экран все знаки пунктуации.
Пользователь вводит с клавиатуры строку – предложение с пробелами и знаками пунктуации длиной до 100 символов. Вывести на экран все знаки...

1
 Аватар для Геомеханик
838 / 641 / 940
Регистрация: 26.06.2015
Сообщений: 1,409
07.12.2015, 22:16
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <cstring>
 
void readline(std::istream& _in, std::string& s, const char* sig){
    char c;
    s = "";
    while(_in.get(c) && !_in.fail()){
        if(c == '\n')
            break;
        else if(strchr(sig, c) != NULL)
            s += ' ';
        else
            s += c;
    }
}
 
//...
 
std::string str;
//взамен  getline(cin, str);
readline(std::cin, str, ",.?!;:");
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
07.12.2015, 22:16
Помогаю со студенческими работами здесь

Создать новые строки, содержащие цифры, буквы, а также знаки пунктуации, выбранные из введенной строки
Ввести с помощью клавиатуры строку произвольной длины. Создать новые строки, содержащие цифровые, буквенные символы, а также знаки...

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

надо найти в richedit'e знаки пунктуации
Используя множества пришел к этому коду: cnt := Length(Rich.Text); for I := 0 to cnt do for J := 0 to cnt do if Rich.Lines in...

Напишите программу, которая считает знаки пунктуации
Здравствуйте,помогите пожалуйста написать программу.Напишите программу, которая считает знаки пунктуации в символьной строке. К знакам...

Реализовать функцию, удаляющую в строке знаки пунктуации
Реализовать функцию Compress, удаляющую в строке, переданной в качестве параметров, все символы пунктуации. Функция должна возвращать число...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru