Ashishprajapati29.wordpress.
com
1. C++ if...else and Nested if...else
The if, if...else and nested if...else statement are used to make one-time decisions
in C++ Programming, that is, to execute some code/s and ignore some code/s
depending upon the test condition. Without decision making, the program runs in
similar way every time. Decision making is an important feature of every
programming language using C++ programming. Before you learn decision making,
you should have basic understanding of relational operators.
Contents
if Statement
if...else Statement
Nested if...else Statement
Conditional Operator
1.1 C++ if Statement
The if statement checks whether the test condition is true or not. If the test condition
is true, it executes the code/s inside the body of if statement. But it the test condition
is false, it skips the code/s inside the body of if statement.
Working of if Statement
The if keyword is followed by test condition inside parenthesis ( ). If the test
condition is true, the codes inside curly bracket is executed but if test condition is
ASHISH PRAJAPATI 1
Ashishprajapati29.wordpress.com
false, the codes inside curly bracket { } is skipped and control of program goes just
below the body of if as shown in figure above.
Flowchart of if
Example 1: C++ if Statement
C++ Program to print integer entered by user only if that number is positive.
#include <iostream>
using namespace std;
int main() {
int number;
cout<< "Enter an integer: ";
cin>> number;
if ( number > 0) { // Checking whether an integer is positive or not.
cout << "You entered a positive integer: "<<number<<endl;
}
ASHISH PRAJAPATI 2
Ashishprajapati29.wordpress.com
cout<<"This statement is always executed because it's outside if statement.";
return 0;
}
Output 1
Enter an integer: 5
You entered a positive number: 5
This statement is always executed because it's outside if statement.
Output 2
Enter a number: -5
This statement is always executed because it's outside if statement.
1.2 C++ if...else
The if...else executes body of if when the test expression is true and executes the
body of elseif test expression is false.
Working of if...else Statement
ASHISH PRAJAPATI 3
Ashishprajapati29.wordpress.com
The if statement checks whether the test expression is true or not. If the test
condition is true, it executes the code/s inside the body of if statement. But it the
test condition is false, it executes the code/s inside the body of else.
Flowchart of if...else
Example 2: C++ if...else Statement
C++ Program to check whether integer entered by user is positive or negative
(Considering 0 as positive)
#include <iostream>
using namespace std;
int main() {
int number;
cout<< "Enter an integer: ";
cin>> number;
if ( number >= 0) {
cout << "You entered a positive integer: "<<number<<endl;
ASHISH PRAJAPATI 4
Ashishprajapati29.wordpress.com
else {
cout<<"You entered a negative integer: "<<number<<endl;
}
cout<<"This statement is always executed because it's outside if...else
statement.";
return 0;
}
Output
Enter an integer: -4
You entered a negative integer: -4
This statement is always executed because it's outside if...else statement.
1.3 C++ Nested if...else
Nested if...else are used if there are more than one test expression.
Syntax of Nested if...else
if (test expression1){
statement/s to be executed if test expression1 is true;
else if(test expression2) {
statement/s to be executed if test expression1 is false and 2 is true;
else if (test expression 3) {
statement/s to be executed if text expression1 and 2 are false and 3 is true;
ASHISH PRAJAPATI 5
Ashishprajapati29.wordpress.com
else {
statements to be executed if all test expressions are false;
The nested if...else statement has more than one test expression. If the first test
expression is true, it executes the code inside the braces { } just below it. But if the
first test expression is false, it checks the second test expression. If the second test
expression is true, if executes the code inside the braces { } just below it. This
process continues. If all the test expression are false, code/s inside else is executed
and the control of program jumps below the nested if...else
Example 3: C++ Nested if...else Statement
C++ Program to check whether the integer entered by user is positive, negative
or zero.
#include <iostream>
using namespace std;
int main() {
int number;
cout<< "Enter an integer: ";
cin>> number;
if ( number > 0) {
cout << "You entered a positive integer: "<<number<<endl;
}
else if (number < 0){
cout<<"You entered a negative integer: "<<number<<endl;
}
else {
cout<<"You entered 0."<<endl;
}
cout<<"This statement is always executed because it's outside nested if..else
statement.";
return 0;
ASHISH PRAJAPATI 6
Ashishprajapati29.wordpress.com
}
Output
Enter an integer: 0
You entered 0.
This statement is always executed because it's outside nested if...else statement.
1.4 Conditional/Ternary Operator (? :)
Conditional operators are the peculiar case of if...else statement in C++
Programming. Consider this if...else statement:
if ( a < b ) {
a = b;
else {
a = -b;
The above code can be written using conditional operator as:
a = (a < b) ? b : -b;
Both codes above check whether a is less than b or not. If a is less than b, value
of b is assigned to a if not, -b is assigned to a.
ASHISH PRAJAPATI 7