Преобразовать строку, записав символы каждого слова этой строки в обратном порядке - Free Pascal

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

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

Добрый день! Помогите пожалуйста написать программу: преобразовать строку, записав символы каждого слова этой строки в обратном порядке.. Пожалуйста, помогите, никогда не работал со строками, не получается написать программу. Вот, пробовал написать, но программа действует не всегда. К примеру на короткую строку "abc def" выводит "cba fed", а если ввести что то подлиннее, то программа не работает:
Листинг программы
  1. Program Stroki;
  2. var
  3. str, temp: string;
  4. len, i, j, b, a: byte;
  5. begin
  6. readln(str);
  7. len := length(str);
  8. a:=0;
  9. b:=1;
  10. for i:=1 to len do
  11. begin
  12. if str[i] = ' ' then
  13. begin
  14. for j:=b to a do
  15. temp[j]:=str[len-j-3];
  16. b:= a+2;
  17. a:=a+2;
  18. end
  19. else
  20. a:= a + 1;
  21. if i=len then
  22. for j:=b to a-1 do
  23. temp[j]:=str[len-j+5];
  24. end;
  25. for i:=1 to len do
  26. write(temp[i]);
  27. readln;
  28. end.

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

textual
Листинг программы
  1. var s,s1,tmp:string;
  2.     i:integer;
  3. begin
  4.     writeln('stroka=?');
  5.     readln(s);
  6.     s:=s+' ';
  7.     while length(s)>0 do
  8.      begin
  9.       tmp:=copy(s,1,pos(' ',s));
  10.       for i:=length(tmp) downto 1 do s1:=s1+tmp[i];
  11.       delete(s,1,length(tmp))
  12.      end;
  13.     delete(s1,1,1);
  14.     writeln('result',#13,s1);
  15. end.

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


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

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

6   голосов , оценка 4.833 из 5

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

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

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