JavaScript is required

Văn phạm với các luật sinh: E → EAE; E-> (E); E-> +E; E-> id; A->- Có thể sinh ra chuỗi nhập nào?

A.

A. (id + id)

B.

B. +id+id+

C.

C. id*id- (id + id)

D.

D. +(id + id)

Trả lời:

Đáp án đúng: D


Phân tích các lựa chọn: - A. (id + id): Không thể sinh ra vì 'A' chỉ có thể là '-'. - B. +id+id+: Không thể sinh ra vì văn phạm chỉ cho phép '+E' chứ không cho phép '+id+'. - C. id*id- (id + id): Không thể sinh ra vì văn phạm không có phép nhân '*'. - D. +(id + id): Có thể sinh ra theo các bước sau: E -> +E E -> +(E) E -> +(EAE) E -> +(idAE) E -> +(id-E) E -> +(id-(E)) E -> +(id-(id)) Vì vậy, đáp án đúng là D.

Câu hỏi liên quan