Decision Making: Switch Statements and tertiary Operator
Switch Statements
Switch statements are another way of handling decision making in your program. Switch statements work just like if-else statements. The reason when they are used is when you have a bunch of if else if statements and it becomes difficult to read then you it change your code to use Switch statements.
How Switch statements work
Syntax
What is default
If no value is matched with all the available cases then the flow of program fall into default case which will execute. It is optional you can skip it in which case nothing will happen if no case is matched.
Note: If you are familiar with any other programming language like java you might know that you can skip break statement in any case which will cause the program to fall into succeeding case and it will keep happening until break statement occur. Well you can’t skip break statement in C#. The people who created C# thinks that this technique might create errors so they don’t let you skip any break statement. If you try to do so the C# compiler will give you error and program won’t compile.
Limitation to Switch Statement and when to use it
You might have noticed that unlike if statements in switch statement only equality is checked. You can’t use less than or greater than symbols in it. You should use switch statement when you have multiple fixed option. If you have range then you should not use it.
Example
Problem 1: Take input from user with only option of pressing “w,a,s,d”. If user presses w then print “up”. If user presses s then print “down”. If user presses a then print “left”. If user presses d then print “right”.
Solution: In this case you have multiple fixed values so you should use switch statements to solve this problem.
Problem2: Take input from user as number from 0 to 100. If user gives number less than 50 then print “fail”. If number is greater than 50 but less than 60 then print “D”. If number is greater than 60 but less than 70 then print “C”. If number is greater than 70 but less than 80 then print “B”. If number is greater than 80 then print “A”.
Solution: in this case you have multiple ranges of values. So you should use if else statements rather than switch cases.
<< Descision making: if else statements
Switch statements are another way of handling decision making in your program. Switch statements work just like if-else statements. The reason when they are used is when you have a bunch of if else if statements and it becomes difficult to read then you it change your code to use Switch statements.
How Switch statements work
Syntax
switch (variable) { case value1: //code for this decision break; case value2: //code for this decision break; default: //code for default case break; }The idea here is that you use switch keyword than pass variable whose value you want to check for whole bunch of cases. When the value of variable match with the given case value, the code in that case executes until the break statement occur, which will just finish the switch statement.
What is default
If no value is matched with all the available cases then the flow of program fall into default case which will execute. It is optional you can skip it in which case nothing will happen if no case is matched.
Note: If you are familiar with any other programming language like java you might know that you can skip break statement in any case which will cause the program to fall into succeeding case and it will keep happening until break statement occur. Well you can’t skip break statement in C#. The people who created C# thinks that this technique might create errors so they don’t let you skip any break statement. If you try to do so the C# compiler will give you error and program won’t compile.
Limitation to Switch Statement and when to use it
You might have noticed that unlike if statements in switch statement only equality is checked. You can’t use less than or greater than symbols in it. You should use switch statement when you have multiple fixed option. If you have range then you should not use it.
Example
Problem 1: Take input from user with only option of pressing “w,a,s,d”. If user presses w then print “up”. If user presses s then print “down”. If user presses a then print “left”. If user presses d then print “right”.
Solution: In this case you have multiple fixed values so you should use switch statements to solve this problem.
Problem2: Take input from user as number from 0 to 100. If user gives number less than 50 then print “fail”. If number is greater than 50 but less than 60 then print “D”. If number is greater than 60 but less than 70 then print “C”. If number is greater than 70 but less than 80 then print “B”. If number is greater than 80 then print “A”.
Solution: in this case you have multiple ranges of values. So you should use if else statements rather than switch cases.
Coding Example class Program { static void Main(string[] args) { Console.Write("Enter direction ( w->up a->left s->down d->right) = "); char direction = Console.ReadKey().KeyChar; Console.ReadLine(); switch (direction) { case 'w': Console.WriteLine("Up"); break; case 'a': Console.WriteLine("Left"); break; case 's': Console.WriteLine("Down"); break; case 'd': Console.WriteLine("Right"); break; default: Console.WriteLine("Invalid input"); break; } } }Output
<< Descision making: if else statements
Tags:
C-sharp

Muhammad Abid
Muhammad Abid is software engineer, a passionate programmer who have created many projects in C# and Java.
Get latest updates in your inbox
Popular Posts
How Yoga Nurtures Your Programming Skills
Understanding and analyzing basics of SEO
Creating SEO friendly URLs with PHP and SQL
Adobe AIR - Developing cross platform applications
Writing functions to insert, update, search, delete from SQL tables in PHP
Getting started with C#
Creating XML sitemap with PHP and SQL and submitting to search engines
Creating RSS feed in xml format with PHP and SQL
Creating thumbnails dynamically from images with PHP
Backup SQL database with PHP
Tags
Android
Java
Nashorn
CSV
Validation
PHP Mailer
cPanel
Facebook
Marketing
AdSense
Google
Technorati
Feathers
Starling
crop
PDF
Yoga
feedburner
rss feed
meta tags
SQL
backup database
Adobe Air
XML Sitemap
Syntaxhighlighter
Uploadify
Tinymce
screenshot
Text image
webmaster tools
Verifying website
web analysis
SEO
visual studio 2013
IDE