Из каждого слова заданного текста удалить последнюю букву - Free Pascal

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

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

Привет всем, помогите в написании программы. Из каждого слова заданного текста удалить последнюю букву.

Решение задачи: «Из каждого слова заданного текста удалить последнюю букву»

textual
Листинг программы
  1. uses crt;
  2. const rz=[' ',',','.']; //разделители слов, можно добавить
  3. var s:string;
  4.     i:byte;
  5. begin
  6. clrscr;
  7. writeln('Введите текст:');
  8. readln(s);
  9. s:=s+' ';
  10. i:=1;
  11. while i<=length(s)-1 do
  12. if not(s[i] in rz)and(s[i+1] in rz) then delete(s,i,1)
  13. else inc(i);
  14. writeln('Удаление последних букв слов');
  15. writeln(s);
  16. readln
  17. end.

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

  1. Объявление переменных:
    • s:string; строка для хранения введенного текста
    • i:byte; переменная для подсчета символов в строке
  2. Ввод текста с помощью функции readln(s);
  3. Добавление пробела в конец строки s, чтобы разделить слова: s := s + ' ';
  4. Установка значения i равным 1 для начала цикла;
  5. Запуск цикла while, который будет выполняться до тех пор, пока i меньше или равно длине строки s минус один:
    • Проверка условия: если символ s[i] не является разделителем (не входит в список rz) и следующий символ является разделителем, то удаление символа s[i] с помощью функции delete(s,i,1);
    • Увеличение значения i на 1, чтобы перейти к следующему символу
  6. Вывод на экран сообщение Удаление последних букв слов и саму строку s;
  7. Ожидание ввода с помощью функции readln.

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


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

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

10   голосов , оценка 3.8 из 5

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

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

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