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

Вычисление кол-ва предложений в строке - C++

Восстановить пароль Регистрация
 
Kuzia_
Сообщений: n/a
18.05.2011, 23:55     Вычисление кол-ва предложений в строке #1
Подскажие пожалуйста как написать программу,которая подсчитывает количество предложений в строке. Считать разделителем и точку и пробел. Организовать вычисления в отдельном потоке. Заранее спасибо...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.05.2011, 23:55     Вычисление кол-ва предложений в строке
Посмотрите здесь:

Программа определяет кол-во предложений в тексте. C++
Строки (Кол-во предложений) C++
C++ кол-во каждой буквы в строке
C++ Кол-во слов в строке
кол-во слов в строке C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Aneron
 Аватар для Aneron
157 / 156 / 12
Регистрация: 20.04.2010
Сообщений: 570
19.05.2011, 00:08     Вычисление кол-ва предложений в строке #2
считай точки в тексте.
Mиxaил
 Аватар для Mиxaил
530 / 435 / 37
Регистрация: 10.12.2009
Сообщений: 1,857
19.05.2011, 00:09     Вычисление кол-ва предложений в строке #3
Aneron, а если стоит многоточие?!
Alena1310
 Аватар для Alena1310
0 / 0 / 0
Регистрация: 18.05.2011
Сообщений: 4
19.05.2011, 00:13     Вычисление кол-ва предложений в строке #4
Цитата Сообщение от Mиxaил Посмотреть сообщение
Aneron, а если стоит многоточие?!
C++
1
2
3
 for(i=0;i<(length(st)-2);i++)
if(st[i] == "." && st[i+1] == " ") 
count++;
Mиxaил
 Аватар для Mиxaил
530 / 435 / 37
Регистрация: 10.12.2009
Сообщений: 1,857
19.05.2011, 00:18     Вычисление кол-ва предложений в строке #5
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
#include <iostream>
#include <string>
 
std::string Delete_Blanks_and_Points (std::string Str)
{
        std::string S = Str;
        while (S.find("  ") < S.length())
                S.erase(S.find("  "), 1);
        while (S.find("..") < S.length())
                S.erase(S.find(".."), 1);
        return S;
}
 
int Number_Sentence (std::string Str)
{
    std::string Double_String = Delete_Blanks_and_Points (Str) + ".";
    int count_sentence = 0;
    while (!Double_String.empty())
    {
        if ((Double_String.find(".") <= Double_String.length()) ||
            (Double_String.find(". ") <= Double_String.length()))
            count_sentence++;
        Double_String.erase(0, Double_String.find(".") + 1);
    }
    return count_sentence;
}
 
int main()
{
    std::string main_string = "Qwerty...Qwerty... Qwerty!";
    std::cout << Delete_Blanks_and_Points (main_string) << std::endl;
    std::cout << Number_Sentence(main_string) << std::endl;
    std::cin.get();
    return 0;
}
Aneron
 Аватар для Aneron
157 / 156 / 12
Регистрация: 20.04.2010
Сообщений: 570
19.05.2011, 00:22     Вычисление кол-ва предложений в строке #6
Вроде как русским языком написано что разделителями являются точка и пробел
Alena1310
 Аватар для Alena1310
0 / 0 / 0
Регистрация: 18.05.2011
Сообщений: 4
19.05.2011, 00:23     Вычисление кол-ва предложений в строке #7
Mиxaил, а если точка используется для сокращения ?
Mиxaил
 Аватар для Mиxaил
530 / 435 / 37
Регистрация: 10.12.2009
Сообщений: 1,857
19.05.2011, 00:24     Вычисление кол-ва предложений в строке #8
Aneron, когда пишешь программу, лучше рассматривать всевозможные случаи, дабы избежать каких - либо ошибок работы.
vortexx1
19.05.2011, 00:24
  #9

Не по теме:

Ну же, сударь, не хамите.

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.05.2011, 00:28     Вычисление кол-ва предложений в строке
Еще ссылки по теме:

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

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

Или воспользуйтесь поиском по форуму:
Mиxaил
 Аватар для Mиxaил
530 / 435 / 37
Регистрация: 10.12.2009
Сообщений: 1,857
19.05.2011, 00:28     Вычисление кол-ва предложений в строке #10
Alena1310, ну тут уже надо писать отдельный обработчик...
хотя текст "здравствуйте ув. иван иванович", можно считать состоящим из 2-ух предложений...
но так как пользователи иногда пишут новое предложение (после точки) с маленькой буквы, то тут уже ничего не понятно! =)

Добавлено через 1 минуту

Не по теме:

vortexx1, Вы это к чему написали?

Yandex
Объявления
19.05.2011, 00:28     Вычисление кол-ва предложений в строке
Ответ Создать тему
Опции темы

Текущее время: 03:10. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru