<< Chapter < Page Chapter >> Page >

The syntax for an if .. else statement:

if (conditional expression) {

statements;

}

else {

statements;

}

Flowchart of statement

Example 1

We construct a C++ program for determining income taxes. Assume that these taxes are assessed at 2% of taxable incomes less than or equal to $20,000. For taxable income greater than $20,000, taxes are 2.5% of the income that exceeds $20,000 plus a fixed amount of $400. (The flowchart of the program is given in Figure 2.)

#include<iostream.h>

#include<iomanip.h>

const float LOWRATE = 0.02; // lower tax rate

const float HIGHRATE = 0.025; // higher tax rate

const float CUTOFF = 20000.0; // cut off for low rate

const float FIXEDAMT = 400; // fixed dollar amount for higher rate amounts

int main()

{

float taxable, taxes;

cout<<"Please type in the taxable income: ";

cin>>taxable;

if (taxable<= CUTOFF)

taxes = LOWRATE * taxable;

else

taxes = HIGHRATE * (taxable - CUTOFF) + FIXEDAMT;

// set output format

cout<<setiosflags(ios::fixed)

<<setiosflags(ios::showpoint)

<<setprecision(2);

cout<<"Taxes are $ "<<taxes<<endl;

return 0;

}

Flowchart of example

The results of the above program:

Please type in the taxable income: 10000

Taxes are $ 200

and

Please type in the taxable income: 30000

Taxes are $ 650

Block scope

All statements within a compound statement constitute a single block of code, and any variable declared within such a block only is valid within the block.

The location within a program where a variable can be used formally referred to as the scope of the variable.

Example:

{ // start of outer block

int a = 25;

int b = 17;

cout<<“The value of a is “<<a

<<“ and b is “<<b<<endl;

{ // start of inner block

float a = 46.25;

int c = 10;

cout<<“ a is now “<<a

<<“b is now “<<b

<<“ and c is “<<c<<endl;

}

cout<<“ a is now “<<a

<<“b is now “<<b<<endl;

} // end of outer block

The output is

The value of a is 25 and b is 17

a is now 46.25 b is now 17 and c is 10

a is now 25 b is now 17

One-way selection

A useful modification of the if-else statement involves omitting the else part of the statement. In this case, the if statement takes a shortened format:

if (conditional expression) {

statements;

}

The flow chart of one-way if statement is as below.

Flowchart of statement

Example

The following program displays an error message for the grades that is less than 0 or more than 100.

#include<iostream.h>

int main()

{

int grade;

cout<<"\nPlease enter a grade: ";

cin>>grade;

if(grade<0 || grade>100)

cout<<" The grade is not valid\n";

return 0;

}

Nested if statement

An if-else statement can contain simple or compound statements. Any valid C++ statement can be used, including another if-else statement. Thus, one or more if-else statements can be included within either part of an if-else statement. The inclusion of one or more if statement within an existing if statement is called a nested if statement.

The if-else chain

When an if statement is included in the else part of an existing if statement, we have an if-else chain.

if (expression-1)

statement-1

else if (expression-2)

statement-2

else

statement-3

Example

The following program calculates the monthly income of a computer salesperson using the following commission schedule:

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Programming fundamentals in c++. OpenStax CNX. Jul 29, 2009 Download for free at http://cnx.org/content/col10788/1.1
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Programming fundamentals in c++' conversation and receive update notifications?

Ask