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

В строке, содержащей несколько слов, разделенных пробелом, переставить слова в обратной последовательности - C++

Восстановить пароль Регистрация
 
Lex93
8 / 8 / 1
Регистрация: 18.02.2013
Сообщений: 56
18.02.2013, 11:48     В строке, содержащей несколько слов, разделенных пробелом, переставить слова в обратной последовательности #1
Задание 1
В строке, содержащей несколько слов, разделенных пробелом, переставить слова в обратной последовательности.

Входные данные:
abcde fghik lmnop qrst uxyz

Выходные данные:
uxyz qrst lmnop fghik abcde
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.02.2013, 11:48     В строке, содержащей несколько слов, разделенных пробелом, переставить слова в обратной последовательности
Посмотрите здесь:

C++ Подсчет количества слов в строке s разделенных пробелами, или запятой
C++ Ввод строки, содержащей несколько слов.
Дан набор слов на английском языке, разделенных пробелами.Выбелить в последовательности нечетные слова прописными буквами C++
Функция в строке должна вычислять количество слов (слова разделяются пробелом) C++
Подсчет колличества слов разделенных пробелом и пробелов в файле C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
SummerRain
 Аватар для SummerRain
325 / 324 / 17
Регистрация: 16.12.2012
Сообщений: 544
18.02.2013, 12:08     В строке, содержащей несколько слов, разделенных пробелом, переставить слова в обратной последовательности #2
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#include <iostream>
#include <vector>
#include <string>
 
std::vector<std::string> split(const std::string& s) {
    std::vector<std::string> vec;
    typedef std::string::size_type str_size;
    str_size i = 0;
    int count = 0;
    while (i != s.size()) {
        while (isspace(s[i]) && i != s.size())
            ++i;
        str_size j = i;
        while (!isspace(s[j]) && j != s.size())
            ++j;
        if (i != j) {
            vec.push_back(s.substr(i, j - i));
            i = j;
        }
    }
    return vec;
}
 
std::string makestr(std::vector<std::string> v) {
    std::string buf;
    std::vector<std::string>::size_type i = v.size() - 1;
    while (i != 0) {
        buf += v[i] + " ";
        --i;
    }
    buf +=v[i];
    return buf;
}
 
int main()
{
    std::string str, newstr;
    std::vector<std::string> v;
    //std::getline(std::cin, str);
    str = "abcde fghik lmnop qrst uxyz";
    v = split(str);
    newstr = makestr(v);
    std::cout << newstr;
    system("PAUSE");
    return 0;
}
Lex93
8 / 8 / 1
Регистрация: 18.02.2013
Сообщений: 56
18.02.2013, 12:10  [ТС]     В строке, содержащей несколько слов, разделенных пробелом, переставить слова в обратной последовательности #3
Спасибо,можешь мне компиляцию скинуть,и в какой среде работаешь?

Добавлено через 35 секунд
Работаю в codelite,он матюгается понять не могу в чем проблема
SummerRain
 Аватар для SummerRain
325 / 324 / 17
Регистрация: 16.12.2012
Сообщений: 544
18.02.2013, 12:13     В строке, содержащей несколько слов, разделенных пробелом, переставить слова в обратной последовательности #4
Цитата Сообщение от Lex93 Посмотреть сообщение
Спасибо,можешь мне компиляцию скинуть,и в какой среде работаешь?

Добавлено через 35 секунд
Работаю в codelite,он матюгается понять не могу в чем проблема
как понять скинуть компиляцию?
компилятор MSVS 2010
если компилятор ругается, скорее всего нужно заменить system("pause") на cin.get() или _getch()
Lex93
8 / 8 / 1
Регистрация: 18.02.2013
Сообщений: 56
18.02.2013, 12:18  [ТС]     В строке, содержащей несколько слов, разделенных пробелом, переставить слова в обратной последовательности #5
сейчас попробую..просто он в программе не показывает ошибок,и не выдает окно компиляции

Добавлено через 3 минуты
там где ответ выдает окно
SummerRain
 Аватар для SummerRain
325 / 324 / 17
Регистрация: 16.12.2012
Сообщений: 544
18.02.2013, 12:33     В строке, содержащей несколько слов, разделенных пробелом, переставить слова в обратной последовательности #6
[IMG]http://s45.***********/i108/1302/da/6d19bb7647e1.jpg[/IMG]
Yandex
Объявления
18.02.2013, 12:33     В строке, содержащей несколько слов, разделенных пробелом, переставить слова в обратной последовательности
Ответ Создать тему
Опции темы

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