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

Поменять слова в сообщении (строки) - C++

Восстановить пароль Регистрация
 
Студент131
Сообщений: n/a
09.02.2011, 23:07     Поменять слова в сообщении (строки) #1
Задача на строки. Поменять слова в сообщении по принципу : первое с n/2+1-словом, второе с n/2+2-словом,i-тое с n/2+i словом и т.д( n - число слов ).
Пожалуйста помогите, зарание Спасибо!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.02.2011, 23:07     Поменять слова в сообщении (строки)
Посмотрите здесь:

Поменять местами слова строки стоящие на четных и нечетных позициях C++
Поменять слова в сообщении по принципу: первое с последним, второе с предпоследним и т.д. C++
C++ Строки. Поменять местами слова
C++ У каждого слова введенной строки поменять местами первую и последнюю букву.
Поменять слова в сообщении по принципу: первое со вторым, третье с четвертым и т.д C++
C++ Строки. В тексте поменять местами каждые два соседних слова
Поменять местами слова, "равноудаленные" от концов строки C++
Напечатать все слова, отличные от последнего слова строки, удалив из каждого слова первую и последнюю буквы C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
igorrr37
 Аватар для igorrr37
1593 / 1221 / 118
Регистрация: 21.12.2010
Сообщений: 1,868
Записей в блоге: 7
10.02.2011, 00:10     Поменять слова в сообщении (строки) #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
#include <sstream>
using namespace std;
 
int main(){
    string s, temp;
    int cou=0;
    getline(cin, s);
    stringstream ss(s);
    while(ss>>temp) ++cou;
    cou/=2;
    ss.clear();
    ss.str(s);
    s.clear();
    while(cou){
        ss>>temp;
        s+=(temp+' ');
        --cou;
    }
    while(ss>>temp) cout<<temp<<' ';
    cout<<s;
}
al_po
1 / 1 / 0
Регистрация: 30.03.2013
Сообщений: 7
06.04.2013, 21:18     Поменять слова в сообщении (строки) #3
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
#include <string>
#include <iostream>
using namespace std;
 
int main(){
        string str;
        cout << "Enter string: ";
        getline(cin,str);
        str+=' ';
        string mas[10];
        string::size_type k=0,pos=0;
        k=str.find(" ",pos);
        int in = 0;
        while(k != string::npos ) {
            string sl = str.substr(pos, k - pos);
            mas[in] = sl;
            pos = k + 1;
            k=str.find(" ",pos);
            in++;
        }
 
        for(int i = 0;i < in ;i++){
            if(in/2 + i < in){
            string t = mas[i];
            mas[i] = mas[in/2 + i];
            mas[in/2 + i] = t;
            }
 
        }
        for(int i = 0;i < 10;++i)
            cout << mas[i] << " "<<endl;
 
        return 0;
}
Yandex
Объявления
06.04.2013, 21:18     Поменять слова в сообщении (строки)
Ответ Создать тему
Опции темы

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