• Предмет: Информатика
  • Автор: leshaproton77
  • Вопрос задан 8 лет назад

С++ или СИ
написать программу с комментариями что для чего, пожалуйста :
Функция Delete(s,n,l)
Назначение: удаление из строки s подстроки, начиная с позиции n, длиной l (аналогичная библиотечная Функция есть в Pascal).

Ответы

Ответ дал: Gleb1Kosyrev
0
//Dev-C++ 5.11

#include <iostream>
#include <string>
using namespace std;

void DeleteStr(string&, int, int);

int main(void)
 {string s;
 int n,l;
 cin>>s>>n>>l;
 DeleteStr(s,n,l);
 cout<<s<<endl;
 return 0;}

void DeleteStr(string &s, int n, int l)
 {for(int i=n;i<s.length();i++) //начинаем удаление с n элемента
 if(i+l<s.length())  //проверка не выходит ли смещение за границы строки
  s[i]=s[i+l];   //если не выходит, просто переносим символ с позиции+l
 else
   s[i]=' ';      //иначе вводим на позицию пустой символ
}

Пример ввода:
Caster 1 4
Пример вывода:
Cr
Вас заинтересует