Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.04.2020, 12:12   #1
Александр222
Пользователь
 
Регистрация: 15.04.2020
Сообщений: 59
Вопрос C++, перестановка букв в слове

Задача из Златопольского
Дано слово из 12-ти букв. Переставить его буквы следующим способом: пер-вая, двенадцатая, вторая, одиннадцатая, ..., пятая, восьмая, шестая, седьмая.
Написал код (С++)
Код:
#include <iostream>
#include <string>

using namespace std;

int main (){

    string str = "ABCDEFGHIJKL";
    string temp =" ";
    for (int i = 0; i < 7; i++){
       temp+=(to_string(str[i])+to_string(str[11 - i]));
    }
 cout <<temp;
}
Результат : 6576667567746873697270717170 (коды букв выводит)
Без to_string не функционирует вообще никак
Причем если написать для for, например, вот так temp+=(to_string(str[i])+(str[11 - i]));
То результат будет такой:65L66K67J68I69H70G71F (то есть через один буквы выводит, а остальное-коды букв)
Пробовал конвертировать в char перед выводом, но тоже не выходит ничего

Последний раз редактировалось Александр222; 15.04.2020 в 13:07.
Александр222 вне форума Ответить с цитированием
Старый 15.04.2020, 15:53   #2
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,291
По умолчанию

Код:
string temp = "";
for (int i = 0; i < 6; i++) {
    temp += str[i];
    temp += str[11 - i];
}
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 15.04.2020, 15:54   #3
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию

https://onlinegdb.com/ryLb4KNuU
Онлайн ІДЕ выводит так
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.
Aleksandr H. вне форума Ответить с цитированием
Старый 15.04.2020, 16:02   #4
Александр222
Пользователь
 
Регистрация: 15.04.2020
Сообщений: 59
По умолчанию

BDA, благодарствую, все заработало! я здесь новенький, в следующий раз обязательно учту, что надо указать язык, но, вроде бы, я его указал в сообщении перед кодом)

Aleksandr H., хм, достаточно странно. У меня code::blocs, пробовал еще на visual studio, но результат такой же.

Последний раз редактировалось BDA; 15.04.2020 в 17:11.
Александр222 вне форума Ответить с цитированием
Старый 15.04.2020, 17:14   #5
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,291
По умолчанию

Цитата:
Сообщение от Александр222 Посмотреть сообщение
учту, что надо указать язык
Да это просто стандартная подпись, не воспринимайте на свой счет.

Цитата:
Сообщение от Александр222 Посмотреть сообщение
но результат такой же
Просто
Код:
temp += str[i] + str[11 - i];
Не то же самое, что и
Код:
temp = temp + str[i] + str[11 - i];
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
подсчет гласных букв в слове santafer Lazarus, Free Pascal, CodeTyphon 4 28.11.2015 22:00
Ограничение на количество букв в слове LittleMonkey Общие вопросы Delphi 3 23.10.2015 13:32
Комбинации букв в слове Palto Помощь студентам 4 24.04.2014 18:24
Перестановка букв в строке на си Brabus Помощь студентам 7 08.11.2010 22:58
перестановка букв в строке Андрей.12 Помощь студентам 0 15.12.2009 15:52