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

определить количество слов - C++

Восстановить пароль Регистрация
 
Hrustik
2 / 2 / 0
Регистрация: 29.05.2013
Сообщений: 80
17.06.2013, 12:52     определить количество слов #1
Дано предложение, определить количество слов в нем.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.06.2013, 12:52     определить количество слов
Посмотрите здесь:

C++ Определить количество слов в файле
C++ Дан массив слов. Определить количество слов массива, которые не являются «перевертышем».
Cтрока: Определить количество средних слов в строке и какое из слов начинается на большую по коду букву C++
Дано строка, состоящая из русских слов, разделенных пробелами (одним или несколькими). ​​Определить количество слов, которые заканчиваются одной и той C++
C++ Определить количество слов в тексте
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
SatanaXIII
Супер-модератор
Эксперт С++
 Аватар для SatanaXIII
5548 / 2562 / 233
Регистрация: 01.11.2011
Сообщений: 6,333
Завершенные тесты: 1
17.06.2013, 13:36     определить количество слов #2
К примеру:
C++
1
2
3
4
5
6
7
8
9
10
11
12
int main()
{
std::string s1="I Don't Like The Drugs (But The Drugs Like Me)";
int count = 1;
for(int x=0;x<s1.length();x++)
    {
        if(s1[x]==' ')count++;
    }
cout << count;
cin.ignore();
return 0;
}
John Prick
754 / 687 / 123
Регистрация: 27.07.2012
Сообщений: 1,974
Завершенные тесты: 3
17.06.2013, 13:59     определить количество слов #3
Между словами не обязательно 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
25
/*
Дано предложение, определить количество слов в нем.
*/
 
#include <string>
#include <iostream>
#include <functional>
#include <algorithm>
 
int main()
{
    std::string s1="I Don't Like The Drugs (But The Drugs Like Me)";
    std::string::iterator curr = s1.begin();
    int count = 1;
    while (curr != s1.end())
    {
        std::string::iterator temp = std::find_if(curr, s1.end(), std::bind2nd(std::equal_to<char>(), ' '));
        if (temp != s1.end())
            ++count;
        curr = std::find_if(temp, s1.end(), std::not1(std::bind2nd(std::equal_to<char>(), ' ')));
    }
    std::cout << count;
    std::cin.ignore();
    return 0;
}
Hrustik
2 / 2 / 0
Регистрация: 29.05.2013
Сообщений: 80
17.06.2013, 14:09  [ТС]     определить количество слов #4
Цитата Сообщение от John Prick Посмотреть сообщение
Между словами не обязательно 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
25
/*
Дано предложение, определить количество слов в нем.
*/
 
#include <string>
#include <iostream>
#include <functional>
#include <algorithm>
 
int main()
{
    std::string s1="I Don't Like The Drugs (But The Drugs Like Me)";
    std::string::iterator curr = s1.begin();
    int count = 1;
    while (curr != s1.end())
    {
        std::string::iterator temp = std::find_if(curr, s1.end(), std::bind2nd(std::equal_to<char>(), ' '));
        if (temp != s1.end())
            ++count;
        curr = std::find_if(temp, s1.end(), std::not1(std::bind2nd(std::equal_to<char>(), ' ')));
    }
    std::cout << count;
    std::cin.ignore();
    return 0;
}
а можно ее сделать как нибудь по проще, по детски (без всяких std и прочих)а то я ниче не понимаю
SatanaXIII
Супер-модератор
Эксперт С++
 Аватар для SatanaXIII
5548 / 2562 / 233
Регистрация: 01.11.2011
Сообщений: 6,333
Завершенные тесты: 1
17.06.2013, 14:13     определить количество слов #5
Цитата Сообщение от John Prick Посмотреть сообщение
Между словами не обязательно 1 пробел.
Именно так. А так же и не обязательно пробел вовсе.

Кстати, John Prick, вас возможно заинтересует следующий материал.
Цитата Сообщение от Hrustik Посмотреть сообщение
(без всяких std и прочих)а то я ниче не понимаю
Вас тоже тогда заинтересует.
Yandex
Объявления
17.06.2013, 14:13     определить количество слов
Ответ Создать тему
Опции темы

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