Удалить символы из заданной строки - Pascal ABC

Узнай цену своей работы

Формулировка задачи:

Дана строка s, содержащая менее чем 256 символов. Удалить из данной последовательности символов все группы букв вида или. Использовать стандартные процедуры и функции в действиях над строками.
Листинг программы
  1. var
  2. s:string;
  3. begin
  4. readln(s);
  5. while pos('или',s)<>0 do
  6. delete (s,pos('или',s),3);
  7. writeln(s);
  8. readln;
  9. end.
Эта программа работает, но она удаляет слово "или" не из данной строки, а до тех пор пока его вообще не будет. Например если мы введем строку : "Аиилилилии." после удаления двух "или" образуется еще одно или и программа его тоже удалит, как сделать так чтобы "или" удалялось только из исходной строки и при образовании нового слова "или" программа его не трогала, так как по условию надо удалить именно из данной строки.

Решение задачи: «Удалить символы из заданной строки»

textual
Листинг программы
  1. var
  2. i:integer;
  3. s:string;
  4. begin;
  5. Writeln('Исходная строка');
  6. Readln(s);
  7. i:=1;
  8. while i<length(s) do
  9. if copy(s,i,3)='или' then delete(s,i-3,3)
  10. else inc(i);
  11. Writeln(s);
  12. end.

Объяснение кода листинга программы

  1. В начале объявляются две переменные: i и s. Переменная i является целочисленной, а переменная s является строкой.
  2. Затем выводится сообщение Исходная строка с помощью функции Writeln.
  3. С помощью функции Readln считывается строка от пользователя.
  4. Переменная i инициализируется значением 1.
  5. Затем начинается цикл while, который будет выполняться до тех пор, пока значение переменной i меньше длины строки s.
  6. Внутри цикла проверяется условие: если подстрока s, начиная с позиции i и длиной 3 символа, равна 'или', то с помощью функции delete удаляется эта подстрока.
  7. Если условие не выполняется, то значение переменной i увеличивается на 1.
  8. После завершения цикла выводится измененная строка s с помощью функции Writeln.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.091 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы