Напишите процедуру Razbit (без парметров), которая разбивает предложение s (глобальная переменная) на массив слов m (глобальная переменная).Сохраните ее под именем razbit.pas и отошлите на тестирование — Pascal(Паскаль)

program stroki;
var
  m   : array [1..100] of string;
  s   : string;
  i,n : longint;
 
  {$i Razbit.pas}
 
begin
  readln(s);
  Razbit;
  for i:=1 to n do writeln(m[i]);
end.

Слова могут разделяться различными разделителями и пробелами. Под словом понимается группа символов, не содержащая разделителей.

Файл с процедурой

const rzd=['.',',','?',';',':','!'];
procedure Razbit;
var i:integer;
begin
{zamena razdelitelej na probely}
for i:=length(s) downto 1 do
if s[i] in rzd then s[i]:=' ';
{udal lishnih probelov}
while pos('  ',s)>0 do
delete(s,pos('  ',s),1);
{esli poslednij probel - udalim}
if s[length(s)]=' ' then delete(s,length(s),1);
{sozdaem massiv slov}
k:=1;
for i:=1 to length(s) do
   begin
    if s[i]=' ' then k:=k+1
    else m[k]:=m[k]+s[i];
   end;
end;

Файл с программой

program stroki;
var
  m   : array [1..100] of string;
  s   : string;
  i,k : longint;
 
  {$I Razbit.pas}
 
begin
  readln(s);
  Razbit;
  for i:=1 to k do writeln(m[i]);
  readln
end.

Leave a Comment

59 − = 49