1.将下面 C++ 程序
<code c>
float limitedSquare (x) {float x;
/ returns x-squared , but never more than 100 /
return (x⇐- 10.0 || x>=1 0 . 0) ? 100 : xx;
}</code>
划分成正确的词素序列。哪些词素应该有关联的语法值?应该具有什么值?
<float> <id, limitedSquaare> <(> <id, x> <)> <{> <float> <id, x> <return> <(> <id, x> <op,"<="> <num, -10.0> <op, "||"> <id, x> <op, ">="> <num, 10.0> <)> <op, "?"> <num, 100> <op, ":"> <id, x> <op, "*"> <id, x> <}>
2.像 HTML 或 XML 之类的标记语言不同于传统的程序设计语言,他们要么包含有很多的标点符号(标记),如 HTML, 要么使用由用户自定义的标记集合,如 XML。而且标记还可以带有参数。请指出如何把如下的 HTML 文档
<code html>
Here is a photo of <b>my house</b>;
<p><img src=“house.gif”/><br/>
see <a href=“morePix.html”>More Picture</a> if you
liked that one.</p></code>
划分成适当的词素序列。哪些词素应该具有相关联的语法值?应该具有什么样的值?
<text, "Here is a photo of"> <nodestart, b> <text, "my house"> <nodeend, b> <nodestart, p> <selfendnode, img> <selfendnode, br> <text, "see"> <nodestart, a> <text, "More Picture"> <nodeend, a> <text, "if you liked that one."> <nodeend, p>
2.试描述下列正则表达式定义的语言: - a(a|b)a - ((ε|a)b) - (a|b)a(a|b)(a|b) - abababa - (aa|bb)((ab|ba)(aa|bb)(ab|ba)(aa|bb))
5.试写出下列语言的正则定义
- 包含5个元音的所有小写字母串,这些串中的元音按顺序出现
- 所有由按词典递增序列的小写字母组成的串
- 注释,由 /* 和 / 之间的串,且串中没有不在双引号中的 */
- !! 所有不重复的数位组成的串 (即允许 101 这样的串,但不允许 110 这样的串)
- !! 所有由偶数个 a 和奇数个 b 构成的串
- 以非正式的方法表示的国际象棋的步法的集合,如 p - k4 或者 kbp x qn
- !! 所有由 a 和 b 组成且不含子串 abb 的串
- 所有由 a 和 b 组成且不含子序列 abb 的串
1.
want -> other* a (other|a)* e (other|e)* i (other|i)* o (other|o)* u (other|u)* other -> [bcdfghjklmnpqrstvwxyz]
2.
a* b* ... z*
3.