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

Подсчет количества слов - C++

Восстановить пароль Регистрация
 
Slipknot666
0 / 0 / 0
Регистрация: 22.11.2012
Сообщений: 15
27.11.2012, 00:31     Подсчет количества слов #1
С клавиатуры вводится строка. Составить программу, которая подсчитывает количество слов, имеющих нечетную длину; вводит на экран частоту вхождения каждой буквы; удаляет текст, который размещен в круглых скобках.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.11.2012, 00:31     Подсчет количества слов
Посмотрите здесь:

Подсчет количества слов в предложении C++
Подсчет количества слов C++
Доработка программы (Подсчет количества слов в строке) C++
C++ Работа со строками. Подсчет количества слов в предложениях и т.д
C++ Подсчет количества предложений и слов в предложении
Подсчет количества слов в файле C++
C++ Подсчет количества слов
C++ Подсчет количества слов, начинающихся с согласной буквы

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4920 / 2663 / 243
Регистрация: 29.11.2010
Сообщений: 7,416
27.11.2012, 02:25     Подсчет количества слов #2
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
#include <iostream>
#include <sstream>
#include <algorithm>
#include <iterator>
#include <string>
#include <map>
 
int main()
{
    std::string str, without=".,()[]{}\"!@#$%^&*/|\\ ;:'?<>`~-+";
    getline(std::cin, str);
    std::istringstream ist(str);
    std::cout<< "Number of words with odd length: "
        << std::count_if(std::istream_iterator<std::string>(ist),
                std::istream_iterator<std::string>(), [](const std::string &str)
                { return str.length() % 2 == 1; } )<< std::endl;
 
    std::map<char, int> mymap;
    for (auto &x: str)
        if (without.find(x) == std::string::npos)
            ++mymap[x];
    for (auto &m: mymap)
        std::cout<< "Number of "<< m.first<< " = "<< m.second<< std::endl;
 
    const std::size_t from = str.find('('), to = str.rfind(')');
    if (from != std::string::npos && to != std::string::npos && to > from)
        str.erase(from, to - from + 1);
    std::cout<< "After deleting: "<< str<< std::endl;
    return 0;
}
Yandex
Объявления
27.11.2012, 02:25     Подсчет количества слов
Ответ Создать тему
Опции темы

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