Модифицируйте программу так, чтобы печатались только:
а) слова, начинающиеся на букву «л»;
б) слова, заканчивающиеся на букву «ь»;
Код программы:
var
stroka, slovo : string;
i : integer;
begin
var b:=['a'..'z','A'..'Z','а'..'я','А'..'Я'];
WriteLn('Введите строку из русских слов с любыми разделителями ');
ReadLn(stroka);
stroka:=trim(stroka);
stroka:=stroka + '.'; // В конец строки поставим точку для того,
// чтоб гарантировать обязательное завершение программы
i:= 1; // рассматривать строку будем с первой буквы
while Length(stroka) <> 0 do
begin
if pos(copy(stroka,i,1),' ,.?!-:;') <> 0 then
{если i-ый символ из строки stroka содержится в строке ' ,.?!-:;', то}
begin
slovo := copy(stroka,1,i-1); // копируем слово
writeln(slovo); //печатаем его
delete(stroka,1,i-1); // Удаляем его из текста
while (length(stroka)>0)and (not(stroka[1] in b)) do
delete(stroka,1,1); // удаляем все разделители до следующего слова
i := 1; // снова рассматриваем слово с первого символа
end
else i := i+1; // определяем следующий символ
end;
end.