ustify"> assign (output, 'output.txt');
reset (input);
rewrite (output);
readln (s);
col: = 1; n: = 1;
fillchar (m, sizeof (m), 0);
writeln (s); i: = 1; q: = 1;
while (i <= byte (s [0])) and ee do
begin
oq: = q;
if s [i] in num then ns: = 1 else {Визначення}
if s [i] = '.' then ns: = 2 else {}
if s [i] = ',' then ns: = 3 else {номери}
if s [i] = '{' then ns: = 4 else {}
if s [i] = '}' then ns: = 5 else ns: = 0; {символу}
case ps [q, ns] of
1: M [col]: = M [col] * 10 + byte (s [i]) -48;
2: inc (col);
3: begin inc (col); inc (n); end;
end;
q: = ms [q, ns];
if ns = 0 then
begin
ee: = false;
writeln (1);
end else
if q = 0 then
begin
ee: = false;
writeln (2);
end;
inc (i);
end;
if ee then
if q = 8 then
begin
writeln ('0 ');
for i: = 1 to col do write ('M (', i, ') =', M [i], # 32);
writeln ('n =', n);
end else writeln ('3 ');
close (input);
close (output);.
Додаток 2
Вихідні тексти умов завдань task.htm:
Варіант № 1:
Синтаксичний аналіз пропозицій для регулярної граматики
Варіант № 1
Вихідний файл:
Laba0101.pas або Laba0101.c
Вхідний файл:
input.txt
Вихідний файл:
output.txt
Постановка завдання
Для заданої регулярної граматики написати і налагодити програму синтаксичного аналізу пропозицій породжуваного мови. У ході виконання за...