GATE CS 2017 Set 1 — Question 43

Go beyond PYQs with Success TrackerAI-powered personalised practice and doubt support. Unlimited practice on eligible plans; AI usage limits apply.
NAT+2 / -0MediumBasic Blocks & Flow GraphsCode OptimizationCompiler DesignControl FlowC ProgrammingProgramming & Data Structures

Compiler Design → Code Optimization → Basic Blocks & Flow Graphs

Last updated

Question

Consider the following grammar:
stmt   -> if expr then expr else expr; stmt | ò
expr   -> term relop term | term
term   -> id | number
id     -> a | b | c
number -> [0-9]
where relop is a relational operator (e.g., <, >, ...), ò refers to the empty statement, and if, then, else are terminals.
Consider a program PP following the above grammar containing ten if terminals. The number of control flow paths in PP is _______. For example, the program
if e1 then e2 else e3
has 2 control flow paths, e1e2e_1 \to e_2 and e1e3e_1 \to e_3.
Your answer

Enter a number. Decimals, negative values and scientific notation are accepted.

The solution stays hidden until you check.

Continue learning with Success Tracker

A step still unclear? Work through it with support

Use Success Tracker to ask about the reasoning, then try another GATE CS question to check your understanding.

AI-powered practice· Unlimited practice on eligible plans
PYQs with solutions
Attempt available previous-year questions, then compare your reasoning with the worked solution. Coverage varies by stream.
Practice that adapts
Choose a topic, work on weaker areas and bookmark questions to revisit. Your attempts feed your progress tracking.
AI doubt support
Ask follow-up questions about a step or concept while practising, instead of stopping at the final answer.

Unlimited practice is available on eligible plans. Free practice and AI usage have limits; check the current plan allowances before choosing.

This page stays readable without an account. AI responses can be wrong; check them against the solution and source material.

More questions on Code Optimization