Из заданного текста удалить последовательность символов между двумя апострофами - Pascal
Формулировка задачи:
Из заданного текста удалить последовательность символов, расположенных между двумя апострофами.
Помогите пожалуйста
Решение задачи: «Из заданного текста удалить последовательность символов между двумя апострофами»
textual
Листинг программы
var s: string; n, k: integer; begin writeln('Введите строку, содержащую не менее двух апострофов:'); readln(s); n := pos('''', s); if n = 0 then write('Строка не содержит апострофов.') else begin k := length(s); while s[k] <> '''' do dec(k); if k = n then write('В строке нет второго апострофа.') else begin delete(s, n + 1, k - n - 1); writeln('Результат:'); write(s) end end; readln end.
Объяснение кода листинга программы
- Объявляется переменная
s
как строковая, и переменныеn
иk
как целочисленные. - Выводится сообщение пользователю:
Введите строку, содержащую не менее двух апострофов:
. - Программа считывает строку, введенную пользователем, и сохраняет её в переменной
s
. - Находится позиция первого апострофа в строке
s
с помощью функцииpos
и сохраняется в переменнойn
. - Если
n
равно 0, программа выводит сообщениеСтрока не содержит апострофов.
. - Иначе:
6.1. Находится длина строки
s
и сохраняется в переменнойk
. 6.2. Пока символ под индексомk
в строкеs
не равен апострофу, переменнаяk
уменьшается. 6.3. Еслиk
равноn
, программа выводит сообщениеВ строке нет второго апострофа.
. 6.4. Иначе: 6.4.1. Удаляется подстрока между первым и вторым апострофами в строкеs
с помощью функцииdelete
. 6.4.2. Выводится сообщениеРезультат:
. 6.4.3. Выводится измененная строкаs
. - Программа ждет ввода пользователя перед завершением.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д