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

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

Ответ:
vikatisenko1
vikatisenko1
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
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?