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

C++. Будьте добры, нужно Добавить в код реализацию следующего: если в тексте встречаются подряд три точки, то оставить их без изменений.

Это нужно добавить в код замены символов . (точек) на последовательность символов ... (троеточий); он приведён ниже.


C++. Будьте добры, нужно Добавить в код реализацию следующего: если в тексте встречаются подряд три

Показать ответ
Ответ:
kirillshok
kirillshok
26.04.2021 19:32

#include <stdio.h>

#include <iostream>

#include <locale.h>

#include <ctime>

int main() {

setlocale(LC_ALL, "rus");

system("chcp 1251");

const int SIZE = 256;

int i, j, ch;

char str[SIZE];

std::cout << "Your string, please" << std::endl;

for (i = 0; i < SIZE - 1 && (ch = getchar()) != -1 && ch != '\n'; i++) {

 str[i] = ch;

}

std::cout << "Изначальная строка:\n" << str << "\n\n" << std::endl;

for (i = 0; i < SIZE - 1; i++) {

 if (str[i] == '.') {

  if (str[i + 1] == '.' && str[i + 2] == '.') {

   i += 2;

   continue;

  }

  else {

   for (j = SIZE - 3; j > i; j--) {

    str[j + 2] = str[j];

   }

   str[i + 1] = '.';

   str[i + 2] = '.';

   i += 2;

  }

 }

}

std::cout << "Измененная строка:\n" << str << "\n\n" << std::endl;

return 0;

}

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