Ввести текст. Переставить местами слова в каждом предложении (первое с последним, второе с предпоследним и т.д.) — Pascal(Паскаль)

program Project2;
 
function Perestanovka(Pred:string):string;
var
    MassWord:array[1..50] of string;
    r,k:integer;
    t,w1,w:string;
 
begin
     for r:=1 to 50 do
      MassWord[r]:='';
    w:='';
    w1:='';
    k:=1;
    t:='';
    Pred:=Pred+' ';
     for r:=1 to Length(Pred) do
       if Pred[r]=' ' then
     begin
        if t<>'' then
         begin
        MassWord[k]:=t;
        t:='';
        k:=k+1;
         end;
     end
       else
        t:=t+Pred[r];
    k:=k-1;
     for r:=1 to (k div 2) do
       begin
      w1:=MassWord[r];
      MassWord[r]:=MassWord[k-r+1];
      MassWord[k-r+1]:=w1;
       end;
   w:=MassWord[1];
     for r:=2 to k do
       w:=w+' '+MassWord[r];
    w:=w+'.';
    Perestanovka:=w;
end;
 
 
var s,vrem,Predl:string;
    i:integer;
 
begin
    Write('Vvedi predlogenya=');
    ReadLn(s);
    s:=s+'.';
    vrem:='';
    Predl:='';
      for i:=1 to Length(s) do
    if (s[i]='.') then
      begin
         Predl:=Predl+Perestanovka(vrem);
         vrem:='';
      end
    else
         vrem:=vrem+s[i];
    Write(Predl);
    ReadLn;
end.

Leave a Comment

69 − 68 =