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

стек: работа со строками - C++

Восстановить пароль Регистрация
 
__Александр__
7 / 10 / 0
Регистрация: 17.09.2012
Сообщений: 191
Записей в блоге: 2
25.10.2013, 22:59     стек: работа со строками #1
взять небольшой текст
напечатать все слова, которые начинаются с буквы, отличную от буквы, с которой начинается первое слово текста. Перед печатью удалить из слов все буквы 'a' и 'o'.
для реализации использовать стек
String не использовать
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.10.2013, 22:59     стек: работа со строками
Посмотрите здесь:

C++ Работа со строками
Работа со строками в С++ C++
РАБОТА СО СТРОКАМИ. C++
C++ Стек и работа с ним
Потоки.Работа с файломи.Очередь.Стек. C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Убежденный
Системный программист
 Аватар для Убежденный
14191 / 6206 / 985
Регистрация: 02.05.2013
Сообщений: 10,339
Завершенные тесты: 1
25.10.2013, 23:14     стек: работа со строками #2
Берите, печатайте, удаляйте. String не используйте. Кто или что мешает ?
__Александр__
7 / 10 / 0
Регистрация: 17.09.2012
Сообщений: 191
Записей в блоге: 2
25.10.2013, 23:41  [ТС]     стек: работа со строками #3
как это сделать с помощью стека ??
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4920 / 2663 / 243
Регистрация: 29.11.2010
Сообщений: 7,410
26.10.2013, 00:18     стек: работа со строками #4
Цитата Сообщение от __Александр__ Посмотреть сообщение
String не использовать
хорошо, буду использовать std::string. А зачем здесь стек?
Цитата Сообщение от __Александр__ Посмотреть сообщение
взять небольшой текст
откуда?

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
#include <iostream>
#include <sstream>
#include <string>
#include <stack>
#include <algorithm>
#include <cctype>
 
int main()
{
    std::string str = " eniki beniki eli vareniki ochen vkusnie", key = "ao", word;
    std::stack<std::string> st;
 
    char firstCh = *std::find_if(str.begin(), str.end(), isalpha);
    std::istringstream ist(str);
    while (ist >> word)
        if (*word.begin() != firstCh)
        {
            if (word.find_first_of(key) != std::string::npos)
                word.erase(word.find_first_of(key), 1);
            st.push(word);
        }
 
    while (!st.empty())
    {
        std::cout << st.top() << " ";
        st.pop();
    }
}
Yandex
Объявления
26.10.2013, 00:18     стек: работа со строками
Ответ Создать тему
Опции темы

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