Skip to content

Latest commit

 

History

History
55 lines (42 loc) · 2.64 KB

File metadata and controls

55 lines (42 loc) · 2.64 KB

Chapter 4.2. More Complex Conditions – Exam Problems

The previous chapter introduced you to nested conditions in C#. Via nested conditions, the program logic in a particular application can be represented using if conditional statements that are nested one into another. We also explained the switch-case conditional statement that allows selecting from a list of options.

Now we are going to solve some practical exercises and make sure we have in-depth understanding of the material, by discussing a number of more complex problems that had been given to students on exams.

More Complex Conditions – Quick Review

Before moving to the problems, let's first recall what nested conditions are.

Nested Conditions

if (condition1)
{
    if (condition2)
        // body; 
    else
        // body;
}
Remember that it is not a good practice to write deeply nested conditional statements (with more than three levels of nesting). Avoid nesting of more than three conditional statements inside one another. This complicates the code and makes its reading and understanding difficult.

Switch-Case Conditions

When the program operation depends on the value of a variable, instead of doing consecutive checks with multiple if-else blocks, we can use the switch-case conditional statement.

switch (selector)
{
    case value1
        statement;
        break;
    case value2
        statement;
        break;
    default
        statement;
        break;
}

The structure consists of a selector (an expression that calculates a particular value) + multiple case labels followed by commands, ending in a break. The selector type can be an integer, string or enumeration (enum).

Exam Problems

Now, after we refreshed our knowledge on how to use and nest conditional statements in order to implement more complex conditions and program logic, let's solve some exam problems: