Зеркальное отображение каждого второго слова в предложении - Turbo Pascal
Формулировка задачи:
Написать программу, которая с помощью подпрограммы выводит зеркальное
отображение каждого второго слова в предложении.
Решение задачи: «Зеркальное отображение каждого второго слова в предложении»
textual
Листинг программы
uses Crt; procedure Pr1(as:string); var s1,s2:string; i,j,n:integer; begin s2:=''; s1:=''; i:=1; n:=0; repeat While as[i] in [' ','.',',',':',';','-','!','?'] do begin s2:=s2+as[i]; Inc(i); end; if i>Length(as) then begin if n=0 then Break else if n=1 then begin s2:=s2+s1; Break; end else begin for j:=Length(s1) downto 1 do s2:=s2+s1[j]; Break; end; end else begin While i<=Length(as) do if as[i] in ['A'..'Z'] then begin s1:=s1+as[i]; Inc(i) end else if as[i] in ['a'..'z'] then begin s1:=s1+as[i]; Inc(i) end else begin Inc(n); Break; end; if n=2 then begin for j:=Length(s1) downto 1 do s2:=s2+s1[j]; s1:=''; n:=0; end else begin s2:=s2+s1; s1:=''; end; end; until i>Length(as); Writeln(s2); end; var s:string; begin ClrScr; Writeln('String:'); Readln(s); Writeln; Writeln('New Strinf:'); Writeln; Pr1(s); ReadKey; end.
Объяснение кода листинга программы
- В начале кода подключается библиотека Crt, которая содержит функции для работы со строками и буфером.
- Создается процедура Pr1, которая принимает строку в качестве параметра.
- Объявляются две переменные типа string - s1 и s2.
- Затем объявляются три переменные типа integer - i, j и n.
- В цикле повторяется следующий код:
- Если текущий символ в строке является пробелом, точкой, запятой, двоеточием, скобкой, знаком равенства, вопросительным знаком или знаком восклицания, то к переменной s2 добавляется символ из переменной s1.
- Если в строке закончились символы, а переменная n равна 0, то цикл прерывается.
- Если переменная n равна 1, то к переменной s2 добавляется переменная s1, и цикл прерывается.
- Если переменная n больше 1, то цикл продолжается, и для каждого символа в переменной s1 выполняется следующая последовательность действий:
- К переменной s2 добавляется символ из переменной s1.
- Переменная s1 сбрасывается в пустую строку.
- Переменная n увеличивается на 1.
- После завершения цикла выводится на экран полученная строка.
- В основной части программы считывается строка от пользователя, выводится сообщение о вводе и вызывается процедура Pr1.
- После окончания работы с экраном вызывается функция ReadKey, чтобы дождаться нажатия клавиши перед завершением программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д