информатика

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

Оставить ответ
1

Ответ №1

//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]='\0';      //иначе вводим на позицию пустой символ
}

Пример ввода:
Caster 1 4
Пример вывода:
Cr

Знаете ответ?