ВУЗ:
Составители:
Рубрика:
7
При просмотре n-го слова текста множество Gl_T получается как результат пе-
ресечения множества Gl_T гласных букв, входящих во все слова от 1 - го до n-1-
го, и множества Gl_Sl гласных букв n - го слова.
Если после просмотра всех слов текста множество Gl_T оказывается не-
пусто, то его элементы выводятся в алфавитном порядке. Обратите внимание
на то, как просто вывести элементы множества в алфавитном порядке (см .
программу)! ♠
Program Glas;
Uses crt;
Const Max_Len = 100; {максимальная длина текста}
eot = '.'; {признак конца текста}
eow = ','; {признак конца слова}
Type TWord = array [1..Max_Len] of char; {тип слова}
TGl = set of char; {тип множества гласных букв}
Const Gl: TGl =
['а','о','ы','э','у','я','ё','и','е','ю'];
Var Text: TWord; {слово}
Gl_Sl, Gl_T: set of char;
{множество гласных букв слова и всех слов}
i,T_Len: 0..Max_Len; {счетчик букв и длина текста}
f: boolean; {признак начального заполнения множества Gl_W}
ch:char; {счетчик цикла}
Begin
Textbackground(7); Textcolor(blue); Clrscr;
{Ввод текста}
writeln('Введите текст (в конце поставьте точку): ');
i:=0;
repeat
inc(i); read(Text[i])
until (i=Max_Len) or (Text[i]=eot);
if Text[i]=eot then T_Len:=i-1 else T_Len:=i;
{Поиск гласных букв, входящих во все слова}
Gl_T:=[]; f:=true; i:=1;
repeat
{пропуск запятых}
while (i<=T_Len) and (Text[i]=eow) do inc(i);
{формирование множества гласных букв слова}
Gl_Sl:=[];
while (i<=T_Len) and (Text[i]<>eow) do
begin
if Text[i] in Gl
then include(Gl_Sl,Text[i]); inc(i)
end;
if f then begin Gl_T:=Gl_Sl; f:=not f end
else Gl_T:=Gl_T*Gl_Sl
Страницы
- « первая
- ‹ предыдущая
- …
- 5
- 6
- 7
- 8
- 9
- …
- следующая ›
- последняя »