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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
BetoN
0 / 0 / 0
Регистрация: 22.01.2012
Сообщений: 13
#1

вектор "словарь" - C++

07.06.2012, 22:39. Просмотров 315. Ответов 4
Метки нет (Все метки)

задача: создается вектор со словами(words), сортируется и выводится(без повторений). нужно сделать так что бы определенные слова заменялись, к примеру на 'Bleep'...
вся проблема в том что после заполнения первого вектора(ввода Ctrl+Z) через второй "перепрыгивает"
подскажите, пожалуйста, в чем проблема...

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 <iostream.h>
#include <string.h>
#include <conio.h>
#include <vector.h>
#include <algorithm.h>
using namespace std;
int main()
{
 vector <string> words;// вектор со словами
 vector <string> dis(4);// вектор с запрещенными словами(количество 4 было поставлено просто для проверки)
 string temp,temp2;
 cout<<"\nVvedite slova \n";
 while(cin>>temp2)    // ввод заканчивается после комбинации Ctrl+Z
  words.push_back(temp2);  
 cout<<"Vvedite nejelatel'nie slova \n";
 while(cin>>temp)
 dis.push_back(temp);
 cout<<"\nKoliсhestvo slov: "<<words.size()<<endl;
 sort(words.begin(), words.end());  // сортировка
 for (int i=0; i<words.size(); ++i)
  if (i==0||words[i-1]!=words[i])  // проверка, новое слово или нет
   for (int j=0; j<dis.size(); ++j)
    {if (words[i]==dis[j]){cout<<"Bleep\n"; break;}else
     cout<<words[i]<<"\n"; break; }
 getch();  
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.06.2012, 22:39     вектор "словарь"
Посмотрите здесь:

Паттерн "Итератор" для шаблонного класса "Словарь" - C++
Препод дал задание сделать шаблонный словарь и реализовать для него иттератор. Сделал словарь, но как работать с иттератором я понятия не...

Композиция классов "Матрица" и "Вектор" - C++
Люди добрые, здравствуйте. недавно в одной из тем был выложен вот такой класс вектор: на основе этого класса нужно разработать класс...

Класс "Толковый словарь" - C++
Добрый день. Подскажите пожалуйста как должны быть построены классы в этом задание и где должны быть методы: Создать консольное...

Как создать двумерный "вектор"? - C++
Не знаю даже правильно ли назвал &quot;двумерный вектор&quot;, скорее всего же &quot;двумерный массив&quot;. Короче необходим двумерный STL-массив. Этот массив...

Вектор указателей и оператор "стрелка" - C++
Не получается реализовать отбражение содержимого контейнера, при помощи оператора -&gt;. Задания и мои коментарии к коду продоставлены ниже....

Модель "стек" используя вектор - C++
Не получается сделать ОЧЕРЕДЬ на одномерном массиве - какие идеи? Stack pushQ(Stack queve) { if(head==0 &amp;&amp; tail==SSize-1)...

Как написать класс "вектор" на С++ - C++
Нужно написать класс для нумерации элементов вектора не с 0, а любыми символами.... К примеру в паскалеподобных языках такое осуществимо....

Реализовать упрощенный контейнер "вектор" - C++
Да, знаю, что тема избитая, но: Стоит такой вопрос &quot;Чем отличается шаблонный класс от контейнера в данном случае - Реализовать шаблон...

Опишите класс "Вектор" - C++
1. Опишите класс &quot;Вектор&quot;. Данные класса: координаты начала и конца вектора. Методы класса: должны обеспечить минимальную...

реализация класса"вектор" - C++
пожалусто дайти информации на эту тему... а то не могу найдти, а Лаптев&quot; Эксперт курс на С++&quot; не помогает...:wall:


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
antoha398
155 / 155 / 3
Регистрация: 29.03.2012
Сообщений: 418
07.06.2012, 22:47     вектор "словарь" #2
поставьте после первого цикла while
C++
1
cin.clear();
и уберите у всех заголовках ".h".
BetoN
0 / 0 / 0
Регистрация: 22.01.2012
Сообщений: 13
07.06.2012, 22:56  [ТС]     вектор "словарь" #3
Спасибо!
я так догадываюсь "cin.clear();" что то чистит...можете объяснить что оно делает?
antoha398
155 / 155 / 3
Регистрация: 29.03.2012
Сообщений: 418
07.06.2012, 23:04     вектор "словарь" #4
после начатия ctrl+z в потоке устанавливается флаг состояния eofbit (конец файла), поэтому что бы следующий cin работал, надо сбросить состояние на goodbit, что и делает фушкция clear().
BetoN
0 / 0 / 0
Регистрация: 22.01.2012
Сообщений: 13
07.06.2012, 23:07  [ТС]     вектор "словарь" #5
еще раз спасибо!
Yandex
Объявления
07.06.2012, 23:07     вектор "словарь"
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru