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

Строки - замена позиций букв в словах - C++

Восстановить пароль Регистрация
 
Аселек
 Аватар для Аселек
11 / 11 / 0
Регистрация: 28.02.2011
Сообщений: 34
04.03.2012, 16:49     Строки - замена позиций букв в словах #1
Очень прошу всех помочь со строковыми данными, буду признательна если поможете решить эту задачу:
Написать программу циклической перестановки букв в словах текста так, что i-я буква слова становится i+1-ой, а последняя - первой
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.03.2012, 16:49     Строки - замена позиций букв в словах
Посмотрите здесь:

C++ замена букв в словах, с++
C++ перестановка букв в словах
C++ Сменя позиций букв
C++ Подсчет букв в словах в строке
C++ Подсчитать количество слов и букв в этих словах в строке
Удалить центральный символ в словах с нечетным числом букв C++
Замена первой буквы во всех словах на заглавную C++
Перестановка вторых и последних букв в словах C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Konstantin_D
 Аватар для Konstantin_D
14 / 14 / 2
Регистрация: 21.07.2011
Сообщений: 89
04.03.2012, 19:18     Строки - замена позиций букв в словах #2
Если в исходной строке могут быть только слова, разделенные пробелами/табуляцией/символами перевода строки, то:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <string>
#include <sstream>
using namespace std;
 
int main()
{
    string str("12345 67890 abcde klmno");
    istringstream iss(str);
    string outstr, word;
    while ( iss >> word )
    {
        outstr += *(word.end()-1);
        if ( 1 < word.size() )
            outstr += string(word.begin(), word.end()-1);
        outstr.push_back(' ');
    }
    cout << str << endl << outstr << endl;
}
Fox01
3 / 3 / 0
Регистрация: 04.03.2012
Сообщений: 55
04.03.2012, 19:52     Строки - замена позиций букв в словах #3
Цитата Сообщение от Konstantin_D Посмотреть сообщение
Если в исходной строке могут быть только слова, разделенные пробелами/табуляцией/символами перевода строки, то:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <string>
#include <sstream>
using namespace std;
 
int main()
{
    string str("12345 67890 abcde klmno");
    istringstream iss(str);
    string outstr, word;
    while ( iss >> word )
    {
        outstr += *(word.end()-1);
        if ( 1 < word.size() )
            outstr += string(word.begin(), word.end()-1);
        outstr.push_back(' ');
    }
    cout << str << endl << outstr << endl;
}
Если Вас не затруднит - поясните код программы для новичка в программировании
Что значит
C++
1
2
3
4
5
6
7
 istringstream iss(str);
              string outstr, word; 
 
и  outstr += *(word.end()-1);
        if ( 1 < word.size() )
            outstr += string(word.begin(), word.end()-1);
        outstr.push_back(' ');
Yandex
Объявления
04.03.2012, 19:52     Строки - замена позиций букв в словах
Ответ Создать тему
Опции темы

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