Другие языки программирования и технологии

помогите написать программу Pascal строки

1.3
Вадим 19Mkr
Вадим 19Mkr
116
Сможешь перевести задания на русский, решу запросто... Если надо-стучись на почту
Бауыржан Садуакасов
Бауыржан Садуакасов
263
Лучший ответ
Вадим 19Mkr Удалить слово с заданным номером, если слов в строке меньше, чем указанный номер - удалить первое слово.
Держи, только ввод и вывод сделай сам:

// функция проверяющая является ли символ разделителем:
function IsSeparator(C: Char): Boolean;
begin
Result := C in [#0..#$1F, ' ', '.', ',', '?', ':', ';', '(', ')', '/', '\'];
end;

// функция удаляющая слово под заданным номером:
function RemoveWord(var Str: string; Num: Integer): Boolean;
var
Count, Index, LastBegin, Size: Integer;
begin
Result := False; // будет означать что слова под нужным номером нет
Count := 0;
LastBegin := 0;
Size := 0;
Index := 0;
while Index < Length(Str) do
begin
Inc(Index);
if IsSeparator(Str[Index]) then Continue; // пропускаем все разделители
LastBegin := Index; // запоминаем начало слова
Inc(Count); // увеличиваем счётчик слов
while not IsSeparator(Str[Index]) and
(Index <= Length(Str)) do Inc(Index); // ищем разделитель или конец строки
if Count = Num then // если слово под нужным номером
begin // удаляем его
Size := Index - LastBegin;
Delete(Str, Index - Size, Size);
Result := True; // и возвращаем True, чтобы показать успешное выполнение
Break;
end;
end;
end;

// в самой программе:
if not RemoveWord(MyString, Number) then // пробуем удалить заданное слово
RemoveWord(MyString, 1); // если не получилось - удаляем первое слово
Знал бы я этот язык, на котором написаны задания)
Vyacheslav Gavrilenko
Vyacheslav Gavrilenko
4 992
________
________