Определить в тексте слова, которые можно читать слева направо и справа налево (Анна, шалаш и т.д.). - Pascal

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

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

Помогите пожалуста решить. Задача: Определить в тексте слова, которые можно читать слева направо и справа налево (Анна, шалаш и т.д.).

Решение задачи: «Определить в тексте слова, которые можно читать слева направо и справа налево (Анна, шалаш и т.д.).»

textual
Листинг программы
uses crt;
var t1,t2,t3,t4:string;
k,i,j:integer;
mn:set of char;
 
function position(t:string) : integer;
var
i:integer;
begin
i:=0;
repeat
inc(i);
until t[i] in mn;
position:=i;
end;
 
begin clrscr;
writeln('vvedi text');
readln(t1);
if t1[length(t1)] <> ' ' then
t1:=t1+' ';
mn:=[' ',',','.','!','?',':',';'];
 
t2:='';
t3:='';
t4:='';
while t1<>'' do
begin
k:=position(t1);
t2:=copy(t1,1,k-1);
t3:='';
for i:=length(t2) downto 1 do t3:=t3+t2[i];
if t2=t3 then writeln('clovo ',t2 ,'- polindrom');
delete(t1,1,k);
end;
 
readkey;
end.

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

Этот код написан на языке Pascal и выполняет следующие действия:

  1. Объявляет переменные t1, t2, t3 и t4 типа string для хранения текста.
  2. Объявляет переменные k, i и j типа integer для хранения числовых значений.
  3. Создает набор mn типа set of char для хранения символов, которые могут быть использованы в качестве начальных символов слов.
  4. Определяет функцию position(t:string) которая возвращает позицию первого вхождения символа из набора mn в строке t.
  5. В основной части кода:
    • Выводит приглашение для ввода текста.
    • Если последний символ введенного текста не является пробелом, добавляет пробел в конец текста.
    • Инициализирует набор mn с помощью символов пробела, запятой, точки,! и ?.
    • Инициализирует переменные t2, t3 и t4 пустыми строками.
    • В цикле, пока текст не будет пустым:
      • Вычисляет позицию первого символа, который может быть использован в качестве начального символа слова.
      • Копирует первые k-1 символов из t1 в t2.
      • Инициализирует переменную t3 пустой строкой.
      • В цикле, пока длина t2 больше 1:
      • Добавляет последний символ t2 к t3.
      • Уменьшает длину t2 на 1.
      • Если t2 совпадает с t3, выводит сообщение о том, что это слово является полиндромом.
      • Удаляет первый символ из t1.
    • Ждет ввода пользователя.

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


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

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

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