Курсовая работа: Построение распознавателя для заданной грамматики и реализация его в виде программы которая проверяет
end;
if not flag then
begin
MessageDlg ('Во введенной грамматике нет правила, содержащего '+#13+'в левой части начальный символ грамматики S. '+#13+'Необходимо добавить такое правило. ',mtError, [mbOk],0);
ComboBox1. SetFocus;
exit;
end;
mn: = ['S'] ;
Again2:
for i: =0 to ListBox1. Items. Count-1 do
begin
if ListBox1. Items. Strings [i] [1] in mn then
begin
for j: =5 to length (ListBox1. Items. Strings [i]) do
begin
if (ord (ListBox1. Items. Strings [i] [j]) in Neterminal) and
(not (ListBox1. Items. Strings [i] [j] in mn)) then
begin
mn: =mn+ [ListBox1. Items. Strings [i] [j]] ;
goto Again2;
end;
end;
end;
end;
s: ='';
for i: =0 to ListBox1. Items. Count-1 do
if (not (ListBox1. Items. Strings [i] [1] in mn)) and
(Pos (ListBox1. Items. Strings [i] [1],s) =0) then s: =s+ListBox1. Items. Strings [i] [1] +' ';
if s<>'' then