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

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

Восстановить пароль Регистрация
 
Belfegor
Ghost
 Аватар для Belfegor
172 / 172 / 6
Регистрация: 16.09.2012
Сообщений: 524
30.12.2012, 02:04     количество предложений #1
доброго вечера,
например
C++
1
2
if (stt[i] == '.' )
           count++;
но как указать условие
...
!!!
???
!?
?!
считает каждый символ концом предложения....
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.12.2012, 02:04     количество предложений
Посмотрите здесь:

C++ Дан текстовый файл. Вывести на экран количество предложений в нём и количество слов в каждом предложении.
C++ количество букв в слове, количество предложений, самое длинное слово в предложении
C++ Определить количество слов в предложений!
C++ Дан текстовый файл. Вывести на экран количество предложений в нём и количество слов в каждом предложении
C++ Подсчитать количество предложений, содержащие нечетное количество слов
Как определить количество предложений в тексте? C++
Определить количество восклицательных предложений C++
Определить количество предложений в тексте C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrCold
851 / 749 / 71
Регистрация: 11.01.2012
Сообщений: 1,942
30.12.2012, 05:13     количество предложений #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
#include <string>
 
int main()
{
    const std::string endOfString[] = {"!!!","...","!?!","??!!","???",".","?","!"};
    std::string str = " Happy New Year! Happy New Year???Happy New Year ??!! New... Yes ?";
    size_t  counter = 0;
    for( std::string s : endOfString )
    {
            std::string::size_type posit =  0;
            posit =  str.find(s, posit);
            while ( posit != std::string::npos)
            {
                str.erase( posit,s.length());
                counter++;
                posit =  str.find(s, posit + 1);
            }
    }
    std::cout << counter << std::endl;    
    return 0;
}
2.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
    std::string str = " Happy New Year! Happy New Year???Happy New Year ??!! New... Yes ?";
    size_t  counter = 0, i = 0;
 
    while ( str[i] )
    {
      if ( 
          ( str[ i ] == '?' || str[ i ] == '.' || str[ i ] == '!')
          &&
          (str[ i + 1 ] != '?' && str[ i + 1 ] != '.' && str[ i + 1 ] != '!')
          )
          counter++;
       i++;
    
    }
Yandex
Объявления
30.12.2012, 05:13     количество предложений
Ответ Создать тему
Опции темы

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