(a)





3.3.2
(delete C ) | (delete D ) | (delete S ) | |||||||||
| | | S' | S | | | S' | S | | | S' |
S | | | S' | S |
| | | S | CD | | | S | CD | | | S | CD | | | | |
| | | a | | | D | | | C | | | S | CD | |||
| | | | | a | | | D | | | C | |||||
| | | | | | | | | |
D | ||||||
| | | | | | | a | | | a | ||||||
| | | C | | | | C | SC | | | C | SC | | | C | SC |
| | | SC | | | S | | | S | | | C | ||||
| | | b | | | b | | | b | | | S | ||||
| | | | | | | | | b | |||||||
| | | D | CC | | | D | CC | | | D | CC | | | D | CC |
| | | | | C | | | C | | | C | |||||
| | | | |
| |||||||||
3.3.3
call S( ) if eof then accept procedure S( ) call A( ) call B( ) return end procedure A( ) do call B( ) call A( ) call B( ) return or call a( ) return until true end procedure B( ) do call A( ) call B( ) call A( ) return or call b( ) return until true end
3.3.4

3.3.5
[source]
3.3.6
[source]