Удалить латинские буквы из текста. - Pascal ABC

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

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

Тема такая: Нужна прога которая при вводе информации удаляет все латинские буквы. Я вот сделал код:
В итоге при выполнении пишет что цикл for должен описываться в заголовке цикла, и пишет еще Индекс находится вне границ массива. Если например убрать эти строки for e:=1 to length(s) do if s[e] in ['a'..'z'] then delete(s,e,1); То работает и фильтрует только большие буквы.

Решение задачи: «Удалить латинские буквы из текста.»

textual
Листинг программы
var i,e:byte;
    s:string;
begin
write('Введите текст:');
readln(s);
for i:=length(s) downto 1 do
if s[i] in ['A'..'Z','a'..'z'] then delete(s,i,1);
writeln('Изменённый текст: ',s);
end.

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

В данном коде происходит следующее:

  1. Объявляются переменные: i, e - оба типа byte; s - тип string.
  2. Выводится сообщение Введите текст:.
  3. Считывается введенный пользователем текст и сохраняется в переменную s.
  4. Запускается цикл for, который проходит по каждому символу во входной строке, начиная с индекса length(s) и до 1 (включительно).
  5. Внутри цикла проверяется, является ли текущий символ латинской буквой. Если да, то он удаляется из строки с помощью функции delete(s,i,1), где i - текущий индекс символа.
  6. После завершения цикла выводится измененная строка с помощью функции writeln(s).

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


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

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

6   голосов , оценка 3.667 из 5
Похожие ответы