0% found this document useful (0 votes)
53 views

Conditional Statements.

The document discusses different types of conditional statements in C# for implementing control-flow logic. It covers comparison and logical operators, the if statement, if-else statement, nested if statements, and the switch-case statement. It provides examples and explanations of how each statement works and good practices for using them.

Uploaded by

Venarate Kanhuru
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
53 views

Conditional Statements.

The document discusses different types of conditional statements in C# for implementing control-flow logic. It covers comparison and logical operators, the if statement, if-else statement, nested if statements, and the switch-case statement. It provides examples and explanations of how each statement works and good practices for using them.

Uploaded by

Venarate Kanhuru
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 34

Conditional Statements

Implementi ng
Control-Flow Logic in C#
SoftUni Team
Technical Trainers
Software University
http://softuni.bg
Table of Contents
1. Comparison and Logical Operators
2. The if Statement
3. The if-else Statement
4. Nested if Statements
5. The switch-case Statement

2
Comparison and
Logical Operators
Comparison Operators
Operator Notation in C# Applicable for
Equals == strings / numbers /
Not Equals != dates / most objects
Greater Than >
Greater Than or Equals >= numbers / dates /
Less Than < comparable objects
Less Than or Equals <=

 Example:
bool result = (5 <= 6);
Console.WriteLine(result); // True
4
Logical Operators
Operator Notation in C# Example
Logical NOT ! !false  true
Logical AND && true && true  true
Logical OR || true || false  true
Logical Exclusive OR (XOR) ^ true ^ false  true

 De Morgan laws
 !!A  A
 !(A || B)  !A && !B
 !(A && B)  !A || !B
5
if and if-else
Implementi ng Conditional Logic
The if Statement
 The simplest conditional statement
 Enables you to test for a condition
 Branch to different blocks in the code depending on the result
 The simplest form of the if statement:

if (condition)
{
statements;
}

7
Condition and Statement
 The condition can be:
 Boolean variable
 Boolean logical expression
 Comparison expression

 The condition cannot be integer variable (like in C / C++)


 The statement can be:
 Single statement ending with a semicolon
 Block enclosed in curly braces
8
How It Works?
 The condition is evaluated
 If it is true, the statement is executed
 If it is false, the statement is skipped

false
condition

true
statements

9
The if Statement – Example
static void Main()
{
Console.WriteLine("Enter two numbers.");

int biggerNum = int.Parse(Console.ReadLine());


int smallerNum = int.Parse(Console.ReadLine());

if (smallerNum > biggerNum)


{
biggerNum = smallerNum;
}

Console.WriteLine("The greater number is: {0}", biggerNum);


}
10
The if Statement
Live Demo
The if-else Statement
 More complex and useful conditional statement
 Executes one branch if the condition is true, and another if it is false
 The simplest form of an if-else statement:
if (expression)
{
some_statement;
}
else
{
another_statement;
}
12
How It Works?
 The condition is evaluated
 If it is true, the first statement is executed
 If it is false, the second statement is executed

false second
condition
statement
true
first
statement

13
if-else Statement – Example
 Checking a number if it is odd or even
string s = Console.ReadLine();
int number = int.Parse(s);

if (number % 2 == 0)
{
Console.WriteLine("This number is even.");
}
else
{
Console.WriteLine("This number is odd.");
}
14
The if-else Statement
Live Demo
Nested if Statements
Creati ng More Complex Logic
Nested if Statements
 if and if-else statements can be nested
 Used inside one inside another
 Each else corresponds to its closest preceding if
if (expression)
{
if (expression)
some_statement;
else
another_statement;
}
else
third_statement;
17
Nested if – Good Practices
 Always use { … } blocks to avoid ambiguity
 Even when a single statement follows

 Avoid using more than three levels of nested if statements


 Put the case you normally expect to process first
 Then write the unusual cases

 Arrange the code to make it more readable

18
Nested if Statements – Example
if (first == second)
{
Console.WriteLine("These two numbers are equal.");
}
else
{
if (first > second)
{
Console.WriteLine("The first number is bigger.");
}
else
{
Console.WriteLine("The second is bigger.");
}
}
19
Nested if
Statements
Live Demo
Multiple if-else-if-else-…
 We may need to use another if-construction in the else block
 Thus else if can be used:

int ch = 'X';
if (ch == 'A' || ch == 'a')
{
Console.WriteLine("Vowel [ei]");
}
else if (ch == 'E' || ch == 'e')
{
Console.WriteLine("Vowel [i:]");
}
else if …
else …
21
Multiple if-else Statements
Live Demo
switch-case
Performing Several Comparisons at Once
The switch-case Statement
 Selects for execution a statement from a list depending on the
value of the switch expression
switch (day)
{
case 1: Console.WriteLine("Monday"); break;
case 2: Console.WriteLine("Tuesday"); break;
case 3: Console.WriteLine("Wednesday"); break;
case 4: Console.WriteLine("Thursday"); break;
case 5: Console.WriteLine("Friday"); break;
case 6: Console.WriteLine("Saturday"); break;
case 7: Console.WriteLine("Sunday"); break;
default: Console.WriteLine("Error!"); break;
}
24
How switch-case Works?
1. The expression is evaluated
2. When one of the constants specified in a case label is equal to
the expression
 The statement that corresponds to that case is executed
3. If no case is equal to the expression
 If there is default case, it is executed
 Otherwise the control is transferred to the end point of the
switch statement
25
The switch-case Statement
Live Demo
Using switch: Rules
 Variable types like string, enum and integral types can be used
for switch expression
 The value null is permitted as a case label constant
 The keyword break exits the switch statement
 "No fall through" rule
 You are obligated to use break after each case

 Multiple labels that correspond to the same statement are


permitted
27
Multiple Labels – Example
 Multiple labels allow matching several cases and executing the same
statement in more than one case
switch (animal)
{
case "dog":
Console.WriteLine("MAMMAL");
break;
case "crocodile":
case "tortoise":
case "snake":
Console.WriteLine("REPTILE");
break;
default:
Console.WriteLine("I don't know such animal!");
break;
}
28
Multiple Labels in
a switch-case
Live Demo
Using switch – Good Practices
 There must be a separate case for every normal situation
 Put the normal case first
 Put the most frequently executed cases first and the least
frequently executed last
 Order cases alphabetically or numerically
 In default use case that cannot be reached under normal
circumstances

30
Summary
 Comparison and logical operators are used to compose logical
conditions
 The conditional statements if and if-else
conditionally execution of blocks of code
 Constantly used in computer programming
 Conditional statements can be nested

 The switch statement easily and elegantly checks an


expression for a sequence of values

31
Conditional Statements

? ?

sti on s ? ?

Qu e ?
?

?
http://softuni.bg/courses/csharp-basics
License
 This course (slides, examples, demos, videos, homework, etc.)
is licensed under the "Creative Commons
Attribution-NonCommercial-ShareAlike 4.0 International" license

 Attribution: this work may contain portions from


 "Fundamentals of Computer Programming with C#" book by Svetlin Nakov & Co. under CC-BY-SA license
 "C# Part I" course by Telerik Academy under CC-BY-NC-SA license

33
Free Trainings @ Software University
 Software University Foundation – softuni.org
 Software University – High-Quality Education,
Profession and Job for Software Developers
 softuni.bg
 Software University @ Facebook
 facebook.com/SoftwareUniversity
 Software University @ YouTube
 youtube.com/SoftwareUniversity
 Software University Forums – forum.softuni.bg

You might also like