Министерство образования и науки Российской Федерации
Государственное образовательное учреждение
высшего профессионального образования
«Комсомольский-на-Амуре государственный технический университет»
Лабораторная работа № 3
по курсу «Теория языков программирования и методы трансляции»
Студенты группы 4ВC-1 Рогозин В.А.
Шелестов И.А.
Преподаватель Петрова А.Н.
2007
Тема:
Приведение грамматик.
Цель работы:
Привести грамматику.
Задание:
Устранить недостижимые символы, устранить бесполезные символы, устранить цепные правила.
Исходные правила:
1. document -> 'DOCTYPE' html
2. html -> '<' 'HTML' '>' head body '<' '/' 'HTML' '>'
3. head -> '<' 'HEAD' '>' head_cont '<' '/' 'HEAD' '>'
4. head_cont -> head_cont title
5. head_cont -> head_cont script
6. head_cont -> head_cont style
7. title -> '<' 'TITLE' '>' data '<' '/' 'TITLE' '>'
8. script -> '<' 'SCRIPT' '>' data '<' '/' 'SCRIPT' '>'
9. style -> '<' 'STYLE' '>' data '<' '/' 'STYLE' '>'
10. body -> '<' 'BODY' body_attr '>' body_cont '<' '/' 'BODY' '>'
11. body_attr -> body_attr 'BACKGROUND' '=' string
12. body_attr -> body_attr 'BGCOLOR' '=' color
13. body_attr -> body_attr 'TEXT' '=' color
14. body_cont -> body_cont heading
15. body_cont -> body_cont text
16. body_cont -> body_cont block
17. heading -> h1
18. heading -> h2
19. heading -> h3
20. heading -> h4
21. heading -> h5
22. heading -> h6
23. h1 -> '<' 'H1' h_attr '>' h_cont '<' '/' 'H1' '>'
24. h2 -> '<' 'H2' h_attr '>' h_cont '<' '/' 'H2' '>'
25. h3 -> '<' 'H3' h_attr '>' h_cont '<' '/' 'H3' '>'
26. h4 -> '<' 'H4' h_attr '>' h_cont '<' '/' 'H4' '>'
27. h5 -> '<' 'H5' h_attr '>' h_cont '<' '/' 'H5' '>'
28. h6 -> '<' 'H6' h_attr '>' h_cont '<' '/' 'H6' '>'
29. h_attr -> 'ALIGN' '=' align_val
30. h_cont -> h_cont text
31. text -> data
32. text -> font
33. text -> special
34. text -> forms
35. font -> i
36. font -> b
37. font -> u
38. special -> a
39. special -> img
40. special -> fonttag
41. special -> br
42. special -> script
43. forms -> input
44. i -> '<' 'I' '>' font_phrase_cont '<' '/' 'I' '>'
45. b -> '<' 'B' '>' font_phrase_cont '<' '/' 'B' '>'
46. u -> '<' 'U' '>' font_phrase_cont '<' '/' 'U' '>'
47. font_phrase_cont -> font_phrase_cont text
48. a -> '<' 'A' a_attr '>' a_cont '<' '/' 'A' '>'
49. a_attr -> a_attr 'HREF' '=' string
50. a_attr -> a_attr 'NAME' '=' string
51. a_attr -> a_attr 'TITLE' '=' string
52. a_cont -> a_cont text
53. img -> '<' 'IMG' img_attr '>'
54. img_attr -> img_attr 'SRC' '=' string
55. img_attr -> img_attr 'ALT' '=' string
56. img_attr -> img_attr 'ALIGN' '=' align_special_val
57. img_attr -> img_attr 'HEIGHT' '=' number
58. img_attr -> img_attr 'WIDTH' '=' number
59. fonttag -> '<' 'FONT' font_attr '>' font_cont '<' '/' 'FONT' '>'
60. font_attr -> 'SIZE' '=' 'SIZE_VALUE'
61. font_attr -> 'COLOR' '=' color
62. font_attr -> 'COLOR' '=' color 'SIZE' '=' 'SIZE_VALUE'
63. font_attr -> 'SIZE' '=' 'SIZE_VALUE' 'COLOR' '=' color
64. font_cont -> font_cont text
65. br -> '<' 'BR' '>'
66. input -> '<' 'INPUT' input_attr '>'
67. input_attr -> input_attr 'TYPE' '=' type_input_val
68. input_attr -> input_attr 'NAME' '=' string
69. input_attr -> input_attr 'VALUE' '=' string
70. input_attr -> input_attr 'SIZE' '=' number
71. input_attr -> input_attr 'SRC' '=' string
72. input_attr -> input_attr 'ALIGN' '=' align_special_val
73. block -> p
74. block -> list
75. block -> dl
76. block -> div
77. block -> center
78. block -> form
79. block -> hr
80. block -> table
81. p -> '<' 'P' '>' p_cont '<' '/' 'P' '>'
82. p_cont -> text
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.