• Предмет: Информатика
  • Автор: anastasiyafomina353
  • Вопрос задан 1 год назад

c++

Ввести рядки s1 та s2. Останні 3 символи рядка s2 видалити, вставити в середину s1 та в отриманому рядку замінити усі символи ‘Е’ на ‘ЕЕ’. Відсортувати символи у s1.​

Ответы

Ответ дал: MagicSticks
0

Ответ:

#include <iostream>

#include <algorithm>

#include <string>

using namespace std;

int main() {

   string s1, s2;

   cout << "Enter s1: ";

   getline(cin, s1); // ввести рядок s1 з пробілами

   cout << "Enter s2: ";

   getline(cin, s2); // ввести рядок s2 з пробілами

   

   // видалити останні 3 символи з s2

   s2.erase(s2.length()-3);

   

   // вставити останні 3 символи з s2 в середину s1

   int pos = s1.length()/2; // знайти позицію для вставки

   s1.insert(pos, s2.substr(s2.length()-3));

   

   // замінити всі символи 'E' на 'EE'

   replace(s1.begin(), s1.end(), 'E', 'E'+'E');

   

   // відсортувати символи у s1

   sort(s1.begin(), s1.end());

   

  // вивести результат

   cout << "Result: " << s1 << endl;

   

   return 0;

}

Объяснение:


anastasiyafomina353: не работает replace само по себе. только если перед поставить "s1." подскажите пожалуйста, что делать?
Похожие вопросы