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

Задача со строками (вывести слово, которое содержит ровно три буквы "и") - C++

Восстановить пароль Регистрация
 
permanentacorp
Сообщений: n/a
10.05.2013, 12:54     Задача со строками (вывести слово, которое содержит ровно три буквы "и") #1
Здравствуйте,
помогите решить задачу.

Пользователь вводит предложение с пробелами, запятыми и тп. Нужно вывести слово, которое содержит ровно
три буквы "и". Суть в том, что нельзя использовать С строки, только примитивные методы или string.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.05.2013, 12:54     Задача со строками (вывести слово, которое содержит ровно три буквы "и")
Посмотрите здесь:

C++ В текстовом файле заменить все лова начинающиеся с буквы "а" на первое место, которое начинается с буквы "с"
C++ Найти самое длинное слово, которое заканчивается на "н"
C++ вывести на друк слово "Одинаковые" если эти массивы полностью совпадают,и слово "Разные" в противоположном случае.
C++ Определить количество слов, которые содержат ровно четыре буквы "о", "О"
C++ Задача "Три Буквы"
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
DiffEreD
 Аватар для DiffEreD
1420 / 757 / 95
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
10.05.2013, 13:44     Задача со строками (вывести слово, которое содержит ровно три буквы "и") #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <algorithm>
#include <iostream>
#include <sstream>
#include <string>
#include <windows.h>
 
int main()
{
    SetConsoleCP (1251); SetConsoleOutputCP (1251);
    
    std::string s;
    std::cout<<"->: "; std::getline(std::cin, s);
    
    std::istringstream iss(s);
    for (std::string temp; iss>>temp; iss)
        if (std::count(temp.begin(), temp.end(), 'и') == 3)
            std::cout<<temp<<" ";
    
    std::cout<<std::endl;
    return 0;
}
permanentacorp
Сообщений: n/a
17.05.2013, 12:10     Задача со строками (вывести слово, которое содержит ровно три буквы "и") #3
Спасибо за помощь)
только как сделать что бы и маленькие и большие воспринимались?
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11835 / 6814 / 769
Регистрация: 27.09.2012
Сообщений: 16,891
Записей в блоге: 2
Завершенные тесты: 1
17.05.2013, 12:13     Задача со строками (вывести слово, которое содержит ровно три буквы "и") #4
переделанный код yuron_477
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
#include <algorithm>
#include <iostream>
#include <sstream>
#include <string>
#include <windows.h>
 
bool pred(char ch){
    return ch=='И' || ch=='и';
}
 
 
int main()
{
    SetConsoleCP (1251); SetConsoleOutputCP (1251);
    
    std::string s;
    std::cout<<"->: "; std::getline(std::cin, s);
    
    std::istringstream iss(s);
    for (std::string temp; iss>>temp; iss)
        if (std::count_if(temp.begin(), temp.end(), pred) == 3)
            std::cout<<temp<<" ";
    
    std::cout<<std::endl;
    return 0;
}
Yandex
Объявления
17.05.2013, 12:13     Задача со строками (вывести слово, которое содержит ровно три буквы "и")
Ответ Создать тему
Опции темы

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