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.