В
Все
У
Українська література
Г
Геометрия
Д
Другие предметы
Э
Экономика
Г
География
О
ОБЖ
М
Математика
М
МХК
Х
Химия
Қ
Қазақ тiлi
Л
Литература
У
Українська мова
О
Обществознание
Ф
Физика
А
Английский язык
А
Алгебра
И
История
Б
Беларуская мова
Б
Биология
М
Музыка
П
Право
И
Информатика
П
Психология
В
Видео-ответы
Н
Немецкий язык
Ф
Французский язык
О
Окружающий мир
Р
Русский язык
scravtz
scravtz
13.02.2020 04:23 •  Информатика

(C++) У даному тексті замінити всі символи «.» на послідовність символів «...». Якщо у тексті зустрічаються підряд три крапки, то залишити ix без змін.

Ответ:
ХОРОШИСТ1234567891
ХОРОШИСТ1234567891
10.04.2021 23:50

#include <iostream>

using namespace std;

int main()

{

   

   string str;

   cout << "Old string:\n";

   getline(cin,str);//если cin >> str, то считывание лишь до первого пробела

   for (int i=0; i < str.length(); i++) //таким образом перемещаемся по элементах строки

   {

       if (str[i] == '.')// если в тексте найдено точку...

       {

           if (str[i + 1] == '.' && str[i + 2] == '.') // ...если дальше есть две точки подряд...

           i+=2;//...то идти дальше: i+=2 здесь и i++ в условии цикла - итого перепрыгнуть через те две точки (i+=3)

           else //если дальше нет двух точек подряд...

           {

               for (int j = 0; j < 2; j++)// ...то по одной...

               {

               str.insert(i, ".");// ..."создать" их, используя функцмю str.insert(pos,key), где первый аргумент - позиция вышенайденной точки, перед которой "создаём" точку (вставляем 2-й аргумент)

               i++;//мы сейчас на новосозданной точке, поэтому идти дальше: переместиться на один символ вперёд - итого мы сейчас на той точке, которую мы не создавали и которая была в Old string

               }

   }}}

   

   cout << "New string =\n" << str;

   return 0;

}

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?