var s : integer; t, t1,t2: string; b1: boolean; begin b1 := false; writeln('введите строку'); readln(t); t2 := ''; repeat p1 := pos(' ',t); if p1>0 then begin t2 := copy(t,1,p1-1); if length(t2)>0) then t1 := t2 + ' ' + t1; delete(t,1,p1); end else if (length(t)>=1) then //обработка кнца строки begin t2 := t; t1 := t2 + ' ' + t1; b1 := true; end else b1 := true; // еще одна проверка, если пследний символ строки - пробел until (b1 = true); writeln('ответ ',t1) end.
Program Tlg; var s:string; i,n:integer; p:real; begin Writeln('Введите текст телеграммы, разделяя слова ровно одним пробелом'); Readln(s); Write('Укажите стоимость слова в рублях: '); Read(p); n:=1; for i:=1 to length(s) do if s[i]=' ' then Inc(n); Writeln('Стоимость телеграммы, руб: ',n*p:0:2) end.
Тестовое решение: Введите текст телеграммы, разделяя слова ровно одним пробелом Грузите апельсины бочками братья Карамазовы Укажите стоимость слова в рублях: 3.78 Стоимость телеграммы, руб: 18.90
program RevStr; var s,s1:string; i,j,n:integer; begin Write('Исходная строка: '); Readln(s); s:=' '+s; n:=length(s); i:=n; j:=n; s1:=''; while i>0 do begin j:=i; while (s[j]=' ') and (j>1) do Dec(j); { удалили пробелы } i:=j; while (s[j]<>' ') and (j>1) do Dec(j); { пробежали по непробелам } if j>0 then s1:=s1+' '+Copy(s, j+1, i-j); i:=j-1 end; s1:=Copy(s1,2,length(s1)-1); Writeln(s1) end.
Тестовое решение: Исходная строка: А роза упала на лапу Азора Азора лапу на упала роза А
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку