Object-Oriented Programming Using C# Objectives In this session, you will learn to: Use various operators: Arithmetic Arithmetic Assignment Unary Comparison Logical
Use conditional constructs Use looping constructs
Ver. 1.0
Session 2
Slide 1 of 25
Object-Oriented Programming Using C# Using Operators Applications use operators to process the data entered by a user. Operators in C# can be classified as follows: Arithmetic operators Arithmetic Assignment operators Unary operators Comparison operators Logical operators
Ver. 1.0
Session 2
Slide 2 of 25
Object-Oriented Programming Using C# Arithmetic Operators Arithmetic operators are the symbols that are used to perform arithmetic operations on variables. The following table describes the commonly used arithmetic operators. Operator
Ver. 1.0
Description
Example
+
Used to add two numbers X=Y+Z; If Y is equal to 20 and Z is equal to 2, X will have the value 22.
-
Used to subtract two numbers
X=Y-Z; If Y is equal to 20 and Z is equal to 2, X will have the value 18.
*
Used to multiply two numbers
X=Y*Z; If Y is equal to 20 and Z is equal to 2, X will have the value 40.
/
Used to divide one number X=Y/Z; by another If Y is equal to 21 and Z is equal to 2, X will have the value 10. But, if Y is equal to 21.0 and Z is equal to 2, X will have the value 10.5.
%
Used to divide two numbers and return the remainder
X=Y%Z; If Y is equal to 21 and Z is equal to 2, X will contain the value 1.
Session 2
Slide 3 of 25
Object-Oriented Programming Using C# Arithmetic Assignment Operators Arithmetic assignment operators are used to perform arithmetic operations to assign a value to an operand. The following table lists the usage and describes the commonly used assignment operators. Operator
Ver. 1.0
Usage
Description
=
X = 5;
Stores the value 5 in the variable X.
+=
X+=Y;
Same as: X = X + Y;
-=
X-=Y;
Same as: X = X - Y;
*=
X*=Y;
Same as: X = X * Y;
/=
X/=Y;
Same as: X = X / Y;
%=
X%=Y;
Same as: X = X % Y;
Session 2
Slide 4 of 25
Object-Oriented Programming Using C# Unary Operators Unary operators are used to increment or decrement the value of an operand by 1. The following table explains the usage of the increment and decrement operators. Operator
Ver. 1.0
Usage
Description
Example
++
++Operand; (Preincrement operator) Or, Operand++; (Postincrement operator)
Used to increment Y = ++X; the value of an If the initial value of X is 5, after the execution operand by 1 of the preceding statement, values of both X and Y will be 6. Y = X++; If the initial value of X is 5, after the execution of the preceding statement, value of X will be 6 and the value of Y will be 5.
--
--Operand; (Predecrement operator) Or, Operand--; (Postdecrement)
Used to decrement Y = --X; the value of an If the initial value of X is 5, after the execution operand by 1 of the preceding statement, values of X and Y will be 4. Y = X--; If the initial value of X is 5, after the execution of the preceding statement, value of X will be 4 and the value of Y will be 5.
Session 2
Slide 5 of 25
Object-Oriented Programming Using C# Comparison Operators Comparison operators are used to compare two values and perform an action on the basis of the result of that comparison. The following table explains the usage of commonly used comparison operators. Operator
Ver. 1.0
Usage
Description
Example (In the following examples, the value of X is assumed to be 20 and the value of Y is assumed to be 25)
<
expression1 < expression2
Used to check whether expression1 bool Result; is less than expression2 Result = X < Y; Result will have the value true.
>
expression1 > expression2
Used to check whether expression1 bool Result; is greater than expression2 Result = X > Y; Result will have the value false.
<=
expression1 <= expression2
Used to check whether expression1 bool Result; is less than or equal to expression2 Result = X <= Y; Result will have the value true.
>=
expression1 >= expression2
Used to check whether expression1 bool Result; is greater than or equal to Result = X >= Y; expression2 Result will have the value false.
Session 2
Slide 6 of 25
Object-Oriented Programming Using C# Comparison Operators (Contd.)
Operator
Ver. 1.0
Usage
Description
Example (In the following examples, the value of X is assumed to be 20 and the value of Y is assumed to be 25)
==
expression1 == expression2
Used to check whether expression1 is equal to expression2
bool Result; Result = X == Y; Result will have the value false.
!=
expression1 != expression2
Used to check whether expression1 is not equal to expression2
bool Result; Result = X != Y; Result will have the value true.
Session 2
Slide 7 of 25
Object-Oriented Programming Using C# Logical Operators Logical operators are used to evaluate expressions and return a Boolean value. The following table explains the usage of logical operators. Operator
Ver. 1.0
Usage
Description
Example bool Result; string str1, str2; str1 = “Korea”; str2 = “France”; Result= ((str1==“Korea”) && (str2==“France”)) Console.WriteLine (Result .ToString()); The message displays True because str1 has the value “Korea” and str2 has the value “France”.
&&
expression1 && expression2
Returns true if both expression1 and expression2 are true.
!
! expression
Returns true if the bool Result expression is false. int x; x = 20; Result=(!( x == 10)) Console.WriteLine(Result.ToString()); The message displays True because the expression used returns true.
Session 2
Slide 8 of 25
Object-Oriented Programming Using C# Logical Operators (Contd.)
Operator
Ver. 1.0
Usage
Description
Example
||
expression1 || expression2
Returns true if either expression1 or expression2 or both of them are true.
^
expression1 ^ expression2
Returns true if either bool Result; expression1 or string str1, str2; expression2 is true. It str1 = “Korea”; returns false if both str2= “France”; expression1 and Result = (str1== “Korea”) ^ (str2== “France”); expression2 are true or if Console.WriteLine (Result .ToString()); both expression1 and The message False is displayed because both the expression2 are false. expressions are true.
Session 2
bool Result string str1, str2; str1 = “Korea”; str2 = “England”; Result= ((str1==“Korea”) || (str2== “France”)) Console.WriteLine (Result .ToString()); The message displays True if either str1 has the value “Korea” or str2 has the value “France”.
Slide 9 of 25
Object-Oriented Programming Using C# Using Conditional Constructs Conditional constructs allow the selective execution of statements, depending on the value of expression associated with them. The comparison operators are required for evaluating the conditions. The various conditional constructs are: The if…else construct The switch…case construct
Ver. 1.0
Session 2
Slide 10 of 25
Object-Oriented Programming Using C# The if…else Construct The if…else conditional construct is followed by a logical expression where data is compared and a decision is made on the basis of the result of the comparison. The following is the syntax of the if…else construct: if (expression) { statements;
} else { statements;
}
Ver. 1.0
Session 2
Slide 11 of 25
Object-Oriented Programming Using C# The if…else Construct (Contd.) The if…else constructs can be nested inside each other. When if…else construct is nested together, the construct is known as cascading if…else constructs.
Ver. 1.0
Session 2
Slide 12 of 25
Object-Oriented Programming Using C# The switch…case Construct The switch…case construct is used when there are multiple values for a variable. The following is the syntax of the switch…case construct: switch (VariableName) { case ConstantExpression_1: statements; break; case ConstantExpression_2: statements; break;
Ver. 1.0
Session 2
Slide 13 of 25
Object-Oriented Programming Using C# The switch…case Construct (Contd.) … case ConstantExpression_n: statements; break; default: statements; break; }
Ver. 1.0
Session 2
Slide 14 of 25
Object-Oriented Programming Using C# Demo: Calculator Using Conditional Constructs Conditional Constructs
Problem Statement: Write a program that emulates a calculator. The calculator should be able to perform the following mathematical operations: Addition Subtraction Multiplication Division
Ver. 1.0
Session 2
Slide 15 of 25
Object-Oriented Programming Using C# Using Loop Constructs Loop structures are used to execute one or more lines of code repetitively. The following loop constructs are supported by C#: The while loop The do…while loop The for loop
Ver. 1.0
Session 2
Slide 16 of 25
Object-Oriented Programming Using C# The while Loop The while loop construct is used to execute a block of statements for a definite number of times, depending on a condition. The following is the syntax of the while loop construct: while (expression) { statements;
}
Ver. 1.0
Session 2
Slide 17 of 25
Object-Oriented Programming Using C# The do…while Loop The do…while loop construct is similar to the while loop construct. Both iterate until the specified loop condition becomes false. The following is the syntax of the do…while loop construct: do { statements; }while(expression);
Ver. 1.0
Session 2
Slide 18 of 25
Object-Oriented Programming Using C# The do…while Loop (Contd.) The following figure shows the difference between the do… while and while loop construct. while do while
Execute body of Loop Evaluate Condition False
True Evaluate Condition
False Execute body of Loop
True
Ver. 1.0
Session 2
Slide 19 of 25
Object-Oriented Programming Using C# The for Loop The for loop structure is used to execute a block of statements for a specific number of times. The following is the syntax of the for loop construct: for (initialization; termination; increment/decrement) { statements }
Ver. 1.0
Session 2
Slide 20 of 25
Object-Oriented Programming Using C# The for Loop (Contd.) The following figure shows the sequence of execution of a complete for loop construct. Initialization
False Evaluate Condition
Exit the for Loop
True
Body of the for Loop
Increment/ Decrement
Ver. 1.0
Session 2
Slide 21 of 25
Object-Oriented Programming Using C# Demo: Fibonacci Series Using Loop Constructs Problem Statement: Write a program that generates the Fibonacci series up to 200.
Ver. 1.0
Session 2
Slide 22 of 25
Object-Oriented Programming Using C# The break and continue Statements The break statement is used to exit from the loop and prevents the execution of the remaining loop. The continue statement is used to skip all the subsequent instructions and take the control back to the loop.
Ver. 1.0
Session 2
Slide 23 of 25
Object-Oriented Programming Using C# Summary In this session, you learned that: Operators are used to compute and compare values and test multiple conditions. You use arithmetic operators to perform arithmetic operations on variables like addition, subtraction, multiplication, and division. You can use arithmetic assignment operators to perform arithmetic operations and assign the result to a variable. The unary operators, such as the increment and decrement operators, operate on one operand. Comparison operators are used to compare two values and perform an action on the basis of the result of the comparison. Logical operators are used to evaluate expressions and return a Boolean value.
Ver. 1.0
Session 2
Slide 24 of 25
Object-Oriented Programming Using C# Summary (Contd.) Conditional constructs are used to allow the selective execution of statements. The conditional constructs in C# are: if…else switch…case
Looping constructs are used when you want a section of a program to be repeated a certain number of times. C# offers the following looping constructs: while do…while for
The break and continue statements are used to control the program flow within a loop.
Ver. 1.0
Session 2
Slide 25 of 25