Home » Theory of Computation » Theory of computation miscellaneous » Question

Theory of computation miscellaneous

Theory of Computation

  1. Consider the following grammar:
    stmt - > if expr then expr else expr; stmt | o
    expr - > term relop term | term
    term - > id | number
    id - > a | b | c
    number - > [0-9]
    where relop is a relational operator (e.g., <, >, ...), o refers to the empty statement, and if, then, else are terminals. Consider a program P following the above grammar containing ten if terminals. The number of control flow paths in P is ________. For example, the program
    if e1 then e2 else e3
    has 2 control flow paths, e1 → e2 and e1 → e3.
    1. 1024
    2. 512
    3. 128
    4. 64
Correct Option: A

The number of control Paths is depends on number of if statement that is 2n, where, n is the number. of if statements For (2 “if statements”) 22 = 4 control flow Paths are possible :

These four control flow are :
(1) e1 → e2
(2) e1 → e3
(3) (e2 if e4 ) → e5
(4) (e3 if e4 ) → e5
So, for (10 “if statements”), 210 = 1024.
Control flow path are possible. Hence, answer is 1024.



Your comments will be displayed only after manual approval.