Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Для новичков > Работа со строкой


Автор: stat007 5.4.2010, 21:27
Стоит такая задачка: Нужно ввести последовательность слов, ввод заканчивается словом quit - это я сделал. 
Далее нужно вывести эти слова (не могу чего-то додуматься как в этом данном примере вывести введённые слова).
Далее необходимо исключить одинаковые слова и отсортировать все введённые слова перед выводом на экран.
Код

#include<iostream>
#include<string>
using namespace std;
int main()
{
    string st;
    do
    {
        getline(cin, st);
    }
    while(st!="quit");
    
        
    system("pause");
    return 0;
}

Автор: GoldFinch 5.4.2010, 21:43
stat007, читай не в 1 строку, а в вектор, список или массив строк.

Автор: ИванМ 5.4.2010, 21:45
Код


#include <string>
#include <list>
#include <iostream>
#include <algorithm>

int main()
{    
    using namespace std;
    list<string> words;
    while(1)
    {
        string word;
        cin>>word;
        if(word=="quit")
            break;
        words.push_back(word);
    }
    cout<<"All words:"<<endl;
    copy(words.begin(), words.end(), ostream_iterator<string>(cout, "\n"));    
    words.sort();
    words.unique();
    cout<<"Sorted unique words:"<<endl;
    copy(words.begin(), words.end(), ostream_iterator<string>(cout, "\n"));
    system("pause");
}


Автор: stat007 5.4.2010, 22:05
Спасибо! smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)