Здравствуйте. Поможет-ли кто-нибудь решить и подробно разобрать код и объяснить? По учебе задано. Текст задания: Дан текст, состоящий из нескольких предложений. Предложения оканчиваются точкой, восклицательным или вопросительным знаками. Из каждого предложения удалить средний символ, если длина предложения нечетна, и два средних символа, если длина четная.
Как я понял, тут надо считать Length до одного из знаков (.!?) и уже в каждом отрезке посчитать кол-во символов и удалить средние. Вот и не пойму, как реализовать. Заранее спасибо!
#include <iostream>
#include <cstring>
#include <signal.h>
#include <memory>
#include <string.h>
#include <string>
#include <vector>
int main(int argc, char** argv)
{
std::string source = "Hello world ! My name is stackowerflow.";
std::vector<std::string> tokens = {"!","?","."};
for(std::string token : tokens){
size_t pos = source.find(token);
if( pos != std::string::npos){
source.erase(pos/2,1);
}
}
std::cout<<source<<std::endl;
return 0;
}
Сборка персонального компьютера от Artline: умный выбор для современных пользователей