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.90program 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.
Тестовое решение:Исходная строка: А роза упала на лапу Азора Азора лапу на упала роза А