В массиве слов найти пару слов,из которых одно является обращением другого - Pascal ABC

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

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

Напишите программу. В массиве слов найти пару слов,из которых одно является обращением другого.

Решение задачи: «В массиве слов найти пару слов,из которых одно является обращением другого»

textual
Листинг программы
function revers(s1,s2:string):boolean;
var i:byte;
    s:string;
begin
s:='';
for i:=length(s1)downto 1 do
s:=s+s1[i];
revers:=s2=s;
end;
var a:array[1..20] of string;
    s1,s2:string;
    n,i,j,k:byte;
begin
repeat
write('Введите размер массива от 2 до 20 n=');
readln(n);
until n in [2..20];
writeln('Введите ',n,' слов для поиска пар обращенных');
for i:=1 to n do
readln(a[i]);
k:=0;
i:=1;
while(i<n)and(k=0) do
 begin
  j:=i+1;
  while(j<=n)and(k=0) do
  if revers(a[i],a[j])then
   begin
    k:=1;
    s1:=a[i];
    s2:=a[j];
   end
  else j:=j+1;
  if k=0 then i:=i+1;
 end;
if k=0 then write('Нет пары обращенных слов')
else
 begin
  writeln('Есть пара обращенных слов, например');
  write(s1,'-',s2);
 end;
end.

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

  1. Функция revers принимает два аргумента s1 и s2, которые являются строками. Она использует цикл for для перебора символов строки s1 в обратном порядке и присваивает результат обратно в s2. В конце функция возвращает значение s2.
  2. Переменная a объявляется как массив строк, который будет использоваться для хранения введенных пользователем слов.
  3. Цикл repeat используется для запроса у пользователя размера массива от 2 до 20.
  4. Затем цикл repeat используется для запроса у пользователя n слов для поиска пар обращенных.
  5. Переменная k инициализируется значением 0.
  6. Цикл while начинается с i=1 и продолжается до i меньше или равно n. Внутри цикла проверяется, равно ли значение k 0. Если это так, то вызывается функция revers с аргументами a[i] и a[j], где j=i+1. Если функция возвращает значение 1, то переменные k и s1 присваиваются соответствующие значения, а s2 присваивается значение a[j]. Если функция возвращает значение 0, то переменная j увеличивается на 1. Если значение k равно 0, то переменная i увеличивается на 1.
  7. Если значение k равно 0, выводится сообщение Нет пары обращенных слов. В противном случае выводится сообщение Есть пара обращенных слов, например, за которым следует вывод значений s1 и s2.

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


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

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

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