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

Сформировать строку, в которую попадут только те слова, где одинаковые буквы встречаются более двух раз - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Какой контейнер для чего использовать? http://www.cyberforum.ru/cpp-beginners/thread126438.html
для чего какой контейнер эффективней использовать? vector- list- map- set- queue- stack-
C++ Не срабатывает условие. Почему? #include "stdafx.h" #include <iostream> #include <conio.h> using namespace std; int _tmain(int argc, _TCHAR* argv) { char p; char command; http://www.cyberforum.ru/cpp-beginners/thread126436.html
Работа с ГРАФИКОЙ C++
ПАМАГИТЕ ОЧ НАДО
Рекурсия,возвращающая значение C++
Разработать рекурсивную функцию, возвращающую значение для перевода числа из десятичной системы счисления в двоичную.И если не трудно,закоментите плз.
C++ функции замени в строке http://www.cyberforum.ru/cpp-beginners/thread126413.html
сори я трохи тупуват ви мо пидсказать мне з чево мне начать функция заменяет в строке одну заданную комбинацию символов другой заданной комбинацией помогите плиз
C++ Cкачиванием файла по протоколу HTTP Вот нашел данный код предназначенный для скачивание файлов по протоколу HTTP BOOL GetURLPageAndStoreToDisk(LPSTR pURLPage, LPSTR pOutputFile) { HINTERNET hSession; HINTERNET hURL; char cBuffer; BOOL bResult; DWORD dwBytesRead; HANDLE hOutputFile; подробнее

Показать сообщение отдельно
easybudda
Эксперт С++
9454 / 5467 / 926
Регистрация: 25.07.2009
Сообщений: 10,490
07.05.2010, 14:23     Сформировать строку, в которую попадут только те слова, где одинаковые буквы встречаются более двух раз
Для разнообразия
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
#include <iostream>
#include <sstream>
#include <algorithm>
#include <string>
 
bool isGood(const std::string& s, size_t margin){
    for ( std::string::const_iterator i = s.begin(); i != s.end(); ++i )
        if ( std::count(s.begin(), s.end(), *i) > margin )
            return true;
    return false;
}
 
int main(){
    std::string str, buf;
    const int NEEDED_MORE = 2;
    
    while ( true ){
        std::cout << "String: ";
        std::getline(std::cin, str);
        if ( str.empty() )
            break;
        std::ostringstream res;
        std::istringstream ist(str);
        while ( ist >> buf )
            if ( isGood(buf, NEEDED_MORE) )
                res << buf << ' ';
        std::cout << "Result: " << res.str() << std::endl;
    }
    
    return 0;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru