SlideShare ist ein Scribd-Unternehmen logo
1 von 50
C++ Constructs
Unit-2
Structure of a C++ program
A C++ program is structured in a specific and particular manner. In C++, a program is
divided into the following sections:
Document Section
Link Section
Specifying Namespace
Global Definition and Declaration Section
Main Program Section
Sub Program Section
2
Structure of a C++ program Contd..
Example
//Program to demonstrate structure of C++ Program //documentation section
#include<iostream> //link section
using namespace std;
#define w “Welcome to Chitkara University” //macro definition
int a=10; // global declaration & definition
int main() // main program section
{
int b=20; //local declaration & definition
int c;
cout<<w<<endl;
c=a+b;
sub(); // subprogram call
cout<<“the answer is”<<c;
return 0;
}
void sub() // subprogram definition section
{
cout<<“this is subprogram’s statement”;
} 3
Documentation section
• Documentation section is
generally meant include “set of
comments”, that is used to
provide the information about
the program: like name of a
program, utility of program,
date of creation, date of last
modification ,author name,
licensing or copyrights
information and any other
information that programmer
wish to put for the references.
//Program Name: First C++ Program
/*
Version: 1.0
Description: C++ program basic program
structure.
Author: @noname
Date Created:05-07-2021
*/
Structure of a C++ program Contd..
4
Structure of a C++ program Contd..
Link Section
• Preprocessors directives tell the compiler to preprocess the source code before
compiling.
• All of these preprocessor directives begin with a ‘#’ (hash) symbol. The ‘#’ symbol
indicates that, whatever statement starts with #, is going to the preprocessor
program, and preprocessor program will execute this statement.
• Examples of some preprocessor directives are: #include, #define, #ifndef etc.
Preprocessor Directives
There are 3 main types of preprocessor
directives:
1. Macros
2. File Inclusion
3. Other directives
5
Structure of a C++ program Contd..
Macros
• Macros are a piece of code
in a program which is given
some name. Whenever this
name is encountered by the
compiler the compiler
replaces the name with the
actual piece of code.
• The ‘#define’ directive is
used to define a macro.
#include<iostream>
using namespace std;
// macro definition
#define LIMIT 5
#define c "czechoslovakia"
int main()
{
for (int i = 0; i < LIMIT; i++)
{
cout << i << "n";
}
cout<<c;
return 0;
}
6
Structure of a C++ program Contd..
File Inclusion
This type of preprocessor directive tells the compiler to include a file in the source code program. There
are two types of files which can be included by the user in the program:
• Header File or Standard files:
#include< file_name >
where file_name is the name of file to be included. The ‘<‘ and ‘>’ brackets tells the compiler to look for
the file in standard directory.
• User defined files: When a program becomes very large, it is good practice to divide it into smaller files
and include whenever needed. These types of files are user defined files. These files can be included as:
#include"filename"
7
Structure of a C++ program Contd..
Other Directives
• Conditional Compilation
Conditional Compilation directives are type of directives which helps to compile a specific portion of
the program or to skip compilation of some specific part of the program based on some conditions.
This can be done with the help of two preprocessing commands ‘ifdef‘ and ‘endif‘.
• #undef Directive:
The #undef directive is used to undefine an existing macro.
#ifdef macro_name
statement1;
statement2;
statement3;
.
.
statementN;
#endif
#undef LIMIT
8
Structure of a C++ program Contd..
Macros with arguments: We can also pass arguments to macros. Macros defined with
arguments works similarly as functions.
#include <iostream>
Using namespace std;
// macro with parameter
#define AREA(l, b) (l * b)
int main()
{
int l1 = 10, l2 = 5, area;
area = AREA(l1, l2);
std::cout << "Area of rectangle is: " << area;
return 0;
}
9
Structure of a C++ program Contd..
Global Declaration and definition
• This is the section where all the global declaration comes. All of the variables,
structures, classed and function defined or declared outside the main function are
treated as global.
#include <iostream>
#define PI 3.142
#define TRUE 1
int a=10; //global declaration & definition
Int main()
{
int b=20;
cout<<a<<b;
}
10
Structure of a C++ program Contd..
Namespaces
• A namespace permits grouping of various
entities like classes, objects, functions, and
various C++ tokens, etc. under a single name.
• Any user can create separate namespaces of its
own and can use them in any other program.
In the below snippets, namespace std contains
declarations for cout, cin, endl, etc. statements.
using namespace std;
Namespaces can be accessed in multiple ways:
using namespace std;
using std :: cout;
int main()
{
cout << "Hello World" << endl;
return 0;
}
The starting point of all C++ programs
is the main function.
This function is called by the operating
system when your program is executed
by the computer.
{ signifies the start of a block of
code, ​and } signifies the end.
Main Program Section
11
Structure of a C++ program Contd..
Subprogram Section
• This is the section of where
all the user defined
than main function created
perform specific tasks.
• A user defined function
defined before use it. User
function can written before
immediately after the main
and called inside the main
function.
#include<iostream>
using namespace std;
int main()
{
cout<<"Hello Everyone!n";
subprogram();
return 0;
}
void subprogram()
{
cout<<“Welcome to Chitkara !";
}
12
Code Compilation Process
Are There
any
Preprocessor
Directive
Compiler
Preprocessor Perform
Action
Linker
C++ Source Code
Yes
No
Object Code
Executable Code
13
Keywords In C++
auto break case char const continue default do
double else enum extern float for goto if
int long register return short signed sizeof static
struct switch typedef union unsigned void volatile while
14
A keyword is a reserved word. You cannot use it as a variable name, constant name etc. A list
of 32 Keywords in C++ Language which are also available in C language are given below.
Data Types
• A data type determines the type and the operations that can be performed on the data.
C++ provides various data types and each data type is represented differently within
the computer’s memory.
• The various data types provided by C++ are built-in data types, derived data
types and user-defined data types.
15
Data Types Contd..
Data Type Size (in bytes) Range
short int 2 -32,768 to 32,767
unsigned short int 2 0 to 65,535
unsigned int 4 0 to 4,294,967,295
int 4 -2,147,483,648 to 2,147,483,647
long int 4 -2,147,483,648 to 2,147,483,647
unsigned long int 8 0 to 4,294,967,295
long long int 8 -(2^63) to (2^63)-1
unsigned long long int 8 0 to 18,446,744,073,709,551,615
signed char 1 -128 to 127
unsigned char 1 0 to 255
Float 4 1.2E-38 to 3.4E+38
double 8 2.3E-308 to 1.7E+308
long double 10 3.4E-4932 to 1.1E+4932
wchar_t 2 or 4 1 wide character
16
C++ Variables
A variable is a name given to a memory location. It is the basic unit of storage in a
program.
• The value stored in a variable can be changed during program execution.
• A variable is only a name given to a memory location, all the operations done on the
variable effects that memory location.
• In C++, all the variables must be declared before use.
17
A typical variable declaration is of the form:
// Declaring a single variable
type variable_name;
// Declaring multiple variables:
type variable1_name, variable2_name, variable3_name;
A variable name can consist of alphabets (both upper and lower case), numbers and
the underscore ‘_’ character. However, the name must not start with a number.
18
C++ Variables Contd..
C++ Variables Contd..
Scope of Variables
In general, the scope is defined as the extent up to which something can be worked with. In
programming also the scope of a variable is defined as the extent of the program code within which the
variable can we accessed or declared or worked with. There are mainly two types of variable scopes:
1.Local Variables
2.Global Variables
Local Variables
Variables defined within a function or block are said to be local to those functions.
• Anything between ‘{‘ and ‘}’ is said to inside a block.
• Local variables do not exist outside the block in which they are declared, i.e. they can not be accessed
or used outside that block.
• Declaring local variables: Local variables are declared inside a block.
19
C++ Variables Contd.
// CPP program to illustrate usage of local variables
#include<iostream>
using namespace std;
void func()
{
// this variable is local to the function func() and cannot be accessed outside this function
int age=18;
cout<<age;
}
int main()
{
cout<<"Age is: ";
func();
return 0;
}
20
C++ Variables Contd.
Global Variables
As the name suggests, Global Variables
can be accessed from any part of the
program.
• They are available through out the life
time of a program.
• They are declared at the top of the
program outside all of the functions or
blocks.
• Declaring global variables: Global
variables are usually declared outside
of all of the functions and blocks, at the
top of the program. They can be
accessed from any portion of the
program.
21
#include<iostream>
using namespace std;
int global = 5;
void display()
{
cout<<global<<endl;
}
int main()
{
display();
// changing value of global variable from main
function
global = 10;
display();
}
C++ Operators
Operators are symbols that
perform operations on
variables and values.
Arithmetic Operators (+ - *
/ %)
Relational Operators (< > <=
>= == !=)
Logical Operators ( && || !)
Conditional Operator (? :)
Special Operators
22
Special Operators
 Increment/Decrement
 Comma, Semicolon
 Dot, Arrow
 New & Delete
 Scope Resolution
 Insertion and Extraction
 Bitwise
 Assignment
 Sizeof
 & and *
 Cast
C++ Operators Contd..
Bitwise Operators
• Bitwise operator works on bits and perform bit-by-bit operation. The
truth tables for &, |, and ^ are as follows −
23
p q p & q p | q p ^ q
0 0 0 0 0
0 1 0 1 1
1 1 1 1 0
1 0 0 1 1
C++ Operators Contd..
• The Bitwise operators supported by C++ language are listed in the following table.
Assume variable A holds 60 and variable B holds 13, then
24
Operator Description Example
&
Binary AND Operator copies a bit to the result if it exists in
both operands.
(A & B) will give 12 which is 0000 1100
| Binary OR Operator copies a bit if it exists in either operand. (A | B) will give 61 which is 0011 1101
^
Binary XOR Operator copies the bit if it is set in one operand
but not both.
(A ^ B) will give 49 which is 0011 0001
~
Binary Ones Complement Operator is unary and has the
effect of 'flipping' bits.
(~A ) will give -61 which is 1100 0011 in 2's complement
form due to a signed binary number.
<<
Binary Left Shift Operator. The left operands value is moved
left by the number of bits specified by the right operand.
A << 2 will give 240 which is 1111 0000
>>
Binary Right Shift Operator. The left operands value is moved
right by the number of bits specified by the right operand.
A >> 2 will give 15 which is 0000 1111
C++ Operators Contd..
Assignment Operators
• There are following assignment operators supported by C++ language
25
Operator Description Example
=
Simple assignment operator, Assigns values from
right side operands to left side operand.
C = A + B will assign value of A + B into C
+=
Add AND assignment operator, It adds right
operand to the left operand and assign the
result to left operand.
C += A is equivalent to C = C + A
-=
Subtract AND assignment operator, It subtracts
right operand from the left operand and assign
the result to left operand.
C -= A is equivalent to C = C - A
C++ Decision Control Statements
The decision control statements are the decision making statements that decides the
order of execution of statements based on the conditions.
In the decision making statements the programmer specify which conditions are to
be executed or tested with the statements to be executed if the condition is true or
false.
CONTROL STATEMENTS ARE OF THREE TYPES
Branching (if, if-else, else-if, switch)
Jumping (break, continue, goto)
Looping (while, do-while, for)
26
If Statement
The if statement consists a condition
which is followed by one or some of
the statements, if the condition is
true then the statements will be
executed or else not. This statement
is the simple and easy decision
control statement.
if (condition)
{
//statements to be executed if
condition is true
}
27
Branching Statements
Branching Statements Contd..
If-Else Statement
In the if-else statement
the if statement is
followed by the else
statement which will
execute when the
expression is false.
if (condition)
{ //statement will execute
if the condition is true
}
else
{ //statement will execute
if the condition is false
}
28
Branching Statements Contd..
Else-If Ladder
• Here, a user can decide among multiple options. The C if statements are executed from the top
down. As soon as one of the conditions controlling the if is true, the statement associated with
that if is executed, and the rest of the C else-if ladder is bypassed. If none of the conditions are
true, then the final else statement will be executed.
29
int time = 22;
if (time < 10)
{
cout << "Good morning.";
}
else if (time < 20)
{
cout << "Good day.";
}
else
{
cout << "Good evening.";
}
iff (nested if)
if (condition1)
{
// Executes when
condition1 is true
if (condition2)
{
// Executes when
condition2 is true
}
}
30
Branching Statements Contd..
SWITCH Statement
Switch case statement evaluates a given expression and based on the
evaluated value(matching a certain condition), it executes the statements
associated with it. Basically, it is used to perform different actions based on
different conditions(cases).
• Switch case statements follow a selection-control mechanism and allow a
value to change control of execution.
• They are a substitute for long if statements that compare a variable to
several integral values.
• The switch statement is a multiway branch statement. It provides an easy
way to dispatch execution to different parts of code based on the value of
the expression.
31
32
Syntax:
switch (n)
{
case 1: // code to be executed if n = 1;
break;
case 2: // code to be executed if n = 2;
break;
default: // code to be executed if n doesn't match any cases
}
Some important keywords:
1) Break: This keyword is used to stop the execution inside a switch block. It
helps to terminate the switch block and break out of it.
2) Default: This keyword is used to specify the set of statements to execute if
there is no case match.
33
// C++ program to demonstrate syntax of switch
#include <iostream>
using namespace std;
// Driver Code
int main()
{
int x = 2;
switch (x) {
case 1:
cout << "Choice is 1";
break;
case 2:
cout << "Choice is 2";
break;
case 3:
cout << "Choice is 3";
break;
default:
cout << "Choice other than 1, 2 and 3";
break;
}
return 0;
}
Loops
34
Loops in programming come into use when we need to repeatedly
execute a block of statements. For example: Suppose we want to
print “Hello World” 10 times. This can be done in two ways as
shown below:
Iterative Method
An iterative method to do this is to write the cout<<…; statement 10
times. // C program to illustrate need of loops
#include <iostream.h>
int main()
{
cout<< "Hello Worldn";
cout<< "Hello Worldn";
cout<< "Hello Worldn";
cout<< "Hello Worldn";
cout<< "Hello Worldn";
cout<< "Hello Worldn";
cout<< "Hello Worldn";
cout<< "Hello Worldn";
cout<< "Hello Worldn";
return 0;
}
Loops Contd..
• In Loop, the statement needs to be written only once and the loop
will be executed 10 times as shown below.
In computer programming, a loop is a sequence of instructions that
is repeated until a certain condition is reached.
• There are mainly two types of loops:
1.Entry Controlled loops: In this type of loops the test condition is tested
before entering the loop body. For Loop and While Loop are entry
controlled loops.
2.Exit Controlled Loops: In this type of loops the test condition is tested or
evaluated at the end of loop body. Therefore, the loop body will execute at
least once, irrespective of whether the test condition is true or false. do –
while loop is exit controlled loop.
35
For Loop
A for loop is a repetition control structure which allows us
to write a loop that is executed a specific number of times.
The loop enables us to perform n number of steps together
in one line.
Syntax:
• for (initialization expr; test expr; update expr)
• {
• // body of the loop
• // statements we want to execute
• }
36
Loops Contd..
Loops Contd..
37
// C++ program to illustrate for loop
#include <iostream>
using namespace std;
int main()
{
for (int i = 1; i <= 10; i++)
{
cout << "Hello Worldn";
}
return 0;
}
Loops Contd..
While Loop
• While studying for loop we have seen that the number of iterations is
known beforehand, i.e. the number of times the loop body is needed to be
executed is known to us. while loops are used in situations where we do
not know the exact number of iterations of loop beforehand. The loop
execution is terminated on the basis of test condition.
Syntax:
initialization expression;
while (test_expression)
{
// statements
update_expression;
}
38
Loops Contd..
39
// C++ program to illustrate while loop
#include <iostream>
using namespace std;
int main()
{
// initialization expression
int i = 1;
// test expression
while (i < 6)
{
cout << "Hello Worldn";
// update expression
i++;
}
return 0;
}
Loops Contd..
Do-While Loop
The main difference between do while loop and while loop
is in do while loop the condition is tested at the end of loop
body, i.e do while loop is exit controlled whereas the other
two loops are entry controlled loops.
Note: In do while loop the loop body will execute at least
once irrespective of test condition.
Syntax:
initialization expression;
do
{
// statements update_expression;
} while (test_expression);
40
Loops Contd..
41
// C++ program to illustrate do-while loop
#include <iostream>
using namespace std;
int main()
{
int i = 2; // Initialization expression
do
{
// loop body
cout << "Hello Worldn";
// update expression
i++;
} while (i < 1); // test expression
return 0;
}
Loops Contd..
Infinite Loop
A loop becomes infinite
loop if a condition never
becomes false. The for
loop is traditionally used
for this purpose. Since
none of the three
expressions that form the
‘for’ loop are required,
you can make an endless
loop by leaving the
conditional expression
empty.
42
#include <iostream>
using namespace std;
int main () {
for( ; ; ) {
printf("This loop will run forever.n");
}
return 0;
}
Jump Statements in C++
These statements are used in C or C++ for unconditional flow of control through out
the functions in a program. They support four type of jump statements:
• Break
• Continue
• Goto
Break: This loop control statement is used to terminate the loop. As soon as the break
statement is encountered from within a loop, the loop iterations stops there and
control returns from the loop immediately to the first statement after the loop.
Syntax:
Break;
Basically break statements are used in the situations when we are not sure about the
actual number of iterations for the loop or we want to terminate the loop based on
some condition.
43
Jump Statements in C++ Contd..
44
#include <iostream>
using namespace std;
int main()
{
int count = 0;
cout<<"C++ Break Statement";
while(count <= 10){
count = count + 1;
if(count == 5){
break;
}
cout<<"nInside loop "<<count;
}
cout<<"nOut of while loop";
return 0;
}
Jump Statements in C++ Contd..
Continue Statement
This loop control statement is just like the break statement. The continue statement is opposite to that
of break statement, instead of terminating the loop, it forces to execute the next iteration of the loop.
As the name suggest the continue statement forces the loop to continue or execute the next iteration.
When the continue statement is executed in the loop, the code inside the loop following the continue
statement will be skipped and next iteration of the loop will begin.
Syntax:
Continue;
45
Jump Statements in C++ Contd..
46
// C++ program to explain the use
// of continue statement
#include <iostream>
using namespace std;
int main()
{
// loop from 1 to 10
for (int i = 1; i <= 10; i++) {
// If i is equals to 6,
// continue to next iteration
// without printing
if (i == 6)
continue;
else
// otherwise print the value of i
cout << i << " ";
}
return 0;
}
Goto Statement
47
 Used to jump unconditionally from one point to another point in the
program.
 General form :
goto label;
--------------
label: statement;
--------------
label: statement;
--------------
goto label;
--------------
or
Goto Statement
48
 About label:
• A label must be a valid identifier,
 don’t use an integer as a label.
• A label can only mark executable statement,
 and can’t mark declaration statement.
• A label is unique in a function
 Don’t use the same label to mark different statements.
Goto Statement Flowchart
49
Start
Statement 1
Statement 2
Statement 3
Label 1:
Label 2:
Label 3:
Goto
Label 3
Stop
#include <iostream>
using namespace std;
int main()
{
int number, n;
int fact=1;
cout<<"Enter a number: ";
cin>>number;
n = number;
Top: if(number>0)
{
fact = fact*number;
number--;
goto Top;
}
cout<<"Factorial of the given number is: "<< fact;
}
Goto Statement Contd..
50
Figure 8
i = 1, sum=0;
i = i + 1
sum = sum + I;
Yes
No
i<=100
begin
Output sum
end
main()
{
Int i=0, sum=0;
loop: if(i<=100)
{
Sum+=i;
i++;
goto loop;
}
printf(“%d”, sum);
}

Weitere ähnliche Inhalte

Ähnlich wie C++ Constructs.pptx

67404923-C-Programming-Tutorials-Doc.pdf
67404923-C-Programming-Tutorials-Doc.pdf67404923-C-Programming-Tutorials-Doc.pdf
67404923-C-Programming-Tutorials-Doc.pdfRajb54
 
Chapter vvxxxxxxxxxxx1 - Part 1 (3).pptx
Chapter vvxxxxxxxxxxx1 - Part 1 (3).pptxChapter vvxxxxxxxxxxx1 - Part 1 (3).pptx
Chapter vvxxxxxxxxxxx1 - Part 1 (3).pptxrajinevitable05
 
Introduction to cpp language and all the required information relating to it
Introduction to cpp language and all the required information relating to itIntroduction to cpp language and all the required information relating to it
Introduction to cpp language and all the required information relating to itPushkarNiroula1
 
Oosd lecture unit 4 ppt introduction part
Oosd lecture unit 4 ppt introduction partOosd lecture unit 4 ppt introduction part
Oosd lecture unit 4 ppt introduction partManuSingh669370
 
Introduction To C++ programming and its basic concepts
Introduction To C++ programming and its basic conceptsIntroduction To C++ programming and its basic concepts
Introduction To C++ programming and its basic conceptsssuserf86fba
 
Data structure week 1
Data structure week 1Data structure week 1
Data structure week 1karmuhtam
 
object oriented programming part inheritance.pptx
object oriented programming part inheritance.pptxobject oriented programming part inheritance.pptx
object oriented programming part inheritance.pptxurvashipundir04
 
C notes diploma-ee-3rd-sem
C notes diploma-ee-3rd-semC notes diploma-ee-3rd-sem
C notes diploma-ee-3rd-semKavita Dagar
 
POLITEKNIK MALAYSIA
POLITEKNIK MALAYSIAPOLITEKNIK MALAYSIA
POLITEKNIK MALAYSIAAiman Hud
 
UNIT-1 notes(Data Types – Variables – Operations – Expressions and Statements...
UNIT-1 notes(Data Types – Variables – Operations – Expressions and Statements...UNIT-1 notes(Data Types – Variables – Operations – Expressions and Statements...
UNIT-1 notes(Data Types – Variables – Operations – Expressions and Statements...RSathyaPriyaCSEKIOT
 
Unit 2 CMath behind coding.pptx
Unit 2 CMath behind coding.pptxUnit 2 CMath behind coding.pptx
Unit 2 CMath behind coding.pptxPragatheshP
 
C programming notes BATRACOMPUTER CENTRE IN Ambala CANTT
C programming notes BATRACOMPUTER CENTRE IN Ambala CANTTC programming notes BATRACOMPUTER CENTRE IN Ambala CANTT
C programming notes BATRACOMPUTER CENTRE IN Ambala CANTTBatra Centre
 

Ähnlich wie C++ Constructs.pptx (20)

67404923-C-Programming-Tutorials-Doc.pdf
67404923-C-Programming-Tutorials-Doc.pdf67404923-C-Programming-Tutorials-Doc.pdf
67404923-C-Programming-Tutorials-Doc.pdf
 
Embedded C.pptx
Embedded C.pptxEmbedded C.pptx
Embedded C.pptx
 
Chapter vvxxxxxxxxxxx1 - Part 1 (3).pptx
Chapter vvxxxxxxxxxxx1 - Part 1 (3).pptxChapter vvxxxxxxxxxxx1 - Part 1 (3).pptx
Chapter vvxxxxxxxxxxx1 - Part 1 (3).pptx
 
C tutorials
C tutorialsC tutorials
C tutorials
 
PPs16.pptx
PPs16.pptxPPs16.pptx
PPs16.pptx
 
Bcsl 031 solve assignment
Bcsl 031 solve assignmentBcsl 031 solve assignment
Bcsl 031 solve assignment
 
Introduction to cpp language and all the required information relating to it
Introduction to cpp language and all the required information relating to itIntroduction to cpp language and all the required information relating to it
Introduction to cpp language and all the required information relating to it
 
C PROGRAMMING p-2.pdf
C PROGRAMMING p-2.pdfC PROGRAMMING p-2.pdf
C PROGRAMMING p-2.pdf
 
Oosd lecture unit 4 ppt introduction part
Oosd lecture unit 4 ppt introduction partOosd lecture unit 4 ppt introduction part
Oosd lecture unit 4 ppt introduction part
 
Introduction To C++ programming and its basic concepts
Introduction To C++ programming and its basic conceptsIntroduction To C++ programming and its basic concepts
Introduction To C++ programming and its basic concepts
 
Data structure week 1
Data structure week 1Data structure week 1
Data structure week 1
 
C++ basics
C++ basicsC++ basics
C++ basics
 
object oriented programming part inheritance.pptx
object oriented programming part inheritance.pptxobject oriented programming part inheritance.pptx
object oriented programming part inheritance.pptx
 
C++ AND CATEGORIES OF SOFTWARE
C++ AND CATEGORIES OF SOFTWAREC++ AND CATEGORIES OF SOFTWARE
C++ AND CATEGORIES OF SOFTWARE
 
C notes diploma-ee-3rd-sem
C notes diploma-ee-3rd-semC notes diploma-ee-3rd-sem
C notes diploma-ee-3rd-sem
 
POLITEKNIK MALAYSIA
POLITEKNIK MALAYSIAPOLITEKNIK MALAYSIA
POLITEKNIK MALAYSIA
 
UNIT-1 notes(Data Types – Variables – Operations – Expressions and Statements...
UNIT-1 notes(Data Types – Variables – Operations – Expressions and Statements...UNIT-1 notes(Data Types – Variables – Operations – Expressions and Statements...
UNIT-1 notes(Data Types – Variables – Operations – Expressions and Statements...
 
Unit 2 CMath behind coding.pptx
Unit 2 CMath behind coding.pptxUnit 2 CMath behind coding.pptx
Unit 2 CMath behind coding.pptx
 
C programming notes BATRACOMPUTER CENTRE IN Ambala CANTT
C programming notes BATRACOMPUTER CENTRE IN Ambala CANTTC programming notes BATRACOMPUTER CENTRE IN Ambala CANTT
C programming notes BATRACOMPUTER CENTRE IN Ambala CANTT
 
Presentation c++
Presentation c++Presentation c++
Presentation c++
 

Kürzlich hochgeladen

SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentationcamerronhm
 
Towards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxTowards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxJisc
 
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Pooja Bhuva
 
Google Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxGoogle Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxDr. Sarita Anand
 
Fostering Friendships - Enhancing Social Bonds in the Classroom
Fostering Friendships - Enhancing Social Bonds  in the ClassroomFostering Friendships - Enhancing Social Bonds  in the Classroom
Fostering Friendships - Enhancing Social Bonds in the ClassroomPooky Knightsmith
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibitjbellavia9
 
Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsKarakKing
 
How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17Celine George
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...ZurliaSoop
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsMebane Rash
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxRamakrishna Reddy Bijjam
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17Celine George
 
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptxHMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptxmarlenawright1
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Jisc
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptxMaritesTamaniVerdade
 
How to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptxHow to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptxCeline George
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.MaryamAhmad92
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.pptRamjanShidvankar
 
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptxExploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptxPooja Bhuva
 

Kürzlich hochgeladen (20)

SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
Towards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxTowards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptx
 
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
 
Google Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxGoogle Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptx
 
Fostering Friendships - Enhancing Social Bonds in the Classroom
Fostering Friendships - Enhancing Social Bonds  in the ClassroomFostering Friendships - Enhancing Social Bonds  in the Classroom
Fostering Friendships - Enhancing Social Bonds in the Classroom
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functions
 
How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17
 
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptxHMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
 
How to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptxHow to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptx
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptxExploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
 

C++ Constructs.pptx

  • 2. Structure of a C++ program A C++ program is structured in a specific and particular manner. In C++, a program is divided into the following sections: Document Section Link Section Specifying Namespace Global Definition and Declaration Section Main Program Section Sub Program Section 2
  • 3. Structure of a C++ program Contd.. Example //Program to demonstrate structure of C++ Program //documentation section #include<iostream> //link section using namespace std; #define w “Welcome to Chitkara University” //macro definition int a=10; // global declaration & definition int main() // main program section { int b=20; //local declaration & definition int c; cout<<w<<endl; c=a+b; sub(); // subprogram call cout<<“the answer is”<<c; return 0; } void sub() // subprogram definition section { cout<<“this is subprogram’s statement”; } 3
  • 4. Documentation section • Documentation section is generally meant include “set of comments”, that is used to provide the information about the program: like name of a program, utility of program, date of creation, date of last modification ,author name, licensing or copyrights information and any other information that programmer wish to put for the references. //Program Name: First C++ Program /* Version: 1.0 Description: C++ program basic program structure. Author: @noname Date Created:05-07-2021 */ Structure of a C++ program Contd.. 4
  • 5. Structure of a C++ program Contd.. Link Section • Preprocessors directives tell the compiler to preprocess the source code before compiling. • All of these preprocessor directives begin with a ‘#’ (hash) symbol. The ‘#’ symbol indicates that, whatever statement starts with #, is going to the preprocessor program, and preprocessor program will execute this statement. • Examples of some preprocessor directives are: #include, #define, #ifndef etc. Preprocessor Directives There are 3 main types of preprocessor directives: 1. Macros 2. File Inclusion 3. Other directives 5
  • 6. Structure of a C++ program Contd.. Macros • Macros are a piece of code in a program which is given some name. Whenever this name is encountered by the compiler the compiler replaces the name with the actual piece of code. • The ‘#define’ directive is used to define a macro. #include<iostream> using namespace std; // macro definition #define LIMIT 5 #define c "czechoslovakia" int main() { for (int i = 0; i < LIMIT; i++) { cout << i << "n"; } cout<<c; return 0; } 6
  • 7. Structure of a C++ program Contd.. File Inclusion This type of preprocessor directive tells the compiler to include a file in the source code program. There are two types of files which can be included by the user in the program: • Header File or Standard files: #include< file_name > where file_name is the name of file to be included. The ‘<‘ and ‘>’ brackets tells the compiler to look for the file in standard directory. • User defined files: When a program becomes very large, it is good practice to divide it into smaller files and include whenever needed. These types of files are user defined files. These files can be included as: #include"filename" 7
  • 8. Structure of a C++ program Contd.. Other Directives • Conditional Compilation Conditional Compilation directives are type of directives which helps to compile a specific portion of the program or to skip compilation of some specific part of the program based on some conditions. This can be done with the help of two preprocessing commands ‘ifdef‘ and ‘endif‘. • #undef Directive: The #undef directive is used to undefine an existing macro. #ifdef macro_name statement1; statement2; statement3; . . statementN; #endif #undef LIMIT 8
  • 9. Structure of a C++ program Contd.. Macros with arguments: We can also pass arguments to macros. Macros defined with arguments works similarly as functions. #include <iostream> Using namespace std; // macro with parameter #define AREA(l, b) (l * b) int main() { int l1 = 10, l2 = 5, area; area = AREA(l1, l2); std::cout << "Area of rectangle is: " << area; return 0; } 9
  • 10. Structure of a C++ program Contd.. Global Declaration and definition • This is the section where all the global declaration comes. All of the variables, structures, classed and function defined or declared outside the main function are treated as global. #include <iostream> #define PI 3.142 #define TRUE 1 int a=10; //global declaration & definition Int main() { int b=20; cout<<a<<b; } 10
  • 11. Structure of a C++ program Contd.. Namespaces • A namespace permits grouping of various entities like classes, objects, functions, and various C++ tokens, etc. under a single name. • Any user can create separate namespaces of its own and can use them in any other program. In the below snippets, namespace std contains declarations for cout, cin, endl, etc. statements. using namespace std; Namespaces can be accessed in multiple ways: using namespace std; using std :: cout; int main() { cout << "Hello World" << endl; return 0; } The starting point of all C++ programs is the main function. This function is called by the operating system when your program is executed by the computer. { signifies the start of a block of code, ​and } signifies the end. Main Program Section 11
  • 12. Structure of a C++ program Contd.. Subprogram Section • This is the section of where all the user defined than main function created perform specific tasks. • A user defined function defined before use it. User function can written before immediately after the main and called inside the main function. #include<iostream> using namespace std; int main() { cout<<"Hello Everyone!n"; subprogram(); return 0; } void subprogram() { cout<<“Welcome to Chitkara !"; } 12
  • 13. Code Compilation Process Are There any Preprocessor Directive Compiler Preprocessor Perform Action Linker C++ Source Code Yes No Object Code Executable Code 13
  • 14. Keywords In C++ auto break case char const continue default do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef union unsigned void volatile while 14 A keyword is a reserved word. You cannot use it as a variable name, constant name etc. A list of 32 Keywords in C++ Language which are also available in C language are given below.
  • 15. Data Types • A data type determines the type and the operations that can be performed on the data. C++ provides various data types and each data type is represented differently within the computer’s memory. • The various data types provided by C++ are built-in data types, derived data types and user-defined data types. 15
  • 16. Data Types Contd.. Data Type Size (in bytes) Range short int 2 -32,768 to 32,767 unsigned short int 2 0 to 65,535 unsigned int 4 0 to 4,294,967,295 int 4 -2,147,483,648 to 2,147,483,647 long int 4 -2,147,483,648 to 2,147,483,647 unsigned long int 8 0 to 4,294,967,295 long long int 8 -(2^63) to (2^63)-1 unsigned long long int 8 0 to 18,446,744,073,709,551,615 signed char 1 -128 to 127 unsigned char 1 0 to 255 Float 4 1.2E-38 to 3.4E+38 double 8 2.3E-308 to 1.7E+308 long double 10 3.4E-4932 to 1.1E+4932 wchar_t 2 or 4 1 wide character 16
  • 17. C++ Variables A variable is a name given to a memory location. It is the basic unit of storage in a program. • The value stored in a variable can be changed during program execution. • A variable is only a name given to a memory location, all the operations done on the variable effects that memory location. • In C++, all the variables must be declared before use. 17
  • 18. A typical variable declaration is of the form: // Declaring a single variable type variable_name; // Declaring multiple variables: type variable1_name, variable2_name, variable3_name; A variable name can consist of alphabets (both upper and lower case), numbers and the underscore ‘_’ character. However, the name must not start with a number. 18 C++ Variables Contd..
  • 19. C++ Variables Contd.. Scope of Variables In general, the scope is defined as the extent up to which something can be worked with. In programming also the scope of a variable is defined as the extent of the program code within which the variable can we accessed or declared or worked with. There are mainly two types of variable scopes: 1.Local Variables 2.Global Variables Local Variables Variables defined within a function or block are said to be local to those functions. • Anything between ‘{‘ and ‘}’ is said to inside a block. • Local variables do not exist outside the block in which they are declared, i.e. they can not be accessed or used outside that block. • Declaring local variables: Local variables are declared inside a block. 19
  • 20. C++ Variables Contd. // CPP program to illustrate usage of local variables #include<iostream> using namespace std; void func() { // this variable is local to the function func() and cannot be accessed outside this function int age=18; cout<<age; } int main() { cout<<"Age is: "; func(); return 0; } 20
  • 21. C++ Variables Contd. Global Variables As the name suggests, Global Variables can be accessed from any part of the program. • They are available through out the life time of a program. • They are declared at the top of the program outside all of the functions or blocks. • Declaring global variables: Global variables are usually declared outside of all of the functions and blocks, at the top of the program. They can be accessed from any portion of the program. 21 #include<iostream> using namespace std; int global = 5; void display() { cout<<global<<endl; } int main() { display(); // changing value of global variable from main function global = 10; display(); }
  • 22. C++ Operators Operators are symbols that perform operations on variables and values. Arithmetic Operators (+ - * / %) Relational Operators (< > <= >= == !=) Logical Operators ( && || !) Conditional Operator (? :) Special Operators 22 Special Operators  Increment/Decrement  Comma, Semicolon  Dot, Arrow  New & Delete  Scope Resolution  Insertion and Extraction  Bitwise  Assignment  Sizeof  & and *  Cast
  • 23. C++ Operators Contd.. Bitwise Operators • Bitwise operator works on bits and perform bit-by-bit operation. The truth tables for &, |, and ^ are as follows − 23 p q p & q p | q p ^ q 0 0 0 0 0 0 1 0 1 1 1 1 1 1 0 1 0 0 1 1
  • 24. C++ Operators Contd.. • The Bitwise operators supported by C++ language are listed in the following table. Assume variable A holds 60 and variable B holds 13, then 24 Operator Description Example & Binary AND Operator copies a bit to the result if it exists in both operands. (A & B) will give 12 which is 0000 1100 | Binary OR Operator copies a bit if it exists in either operand. (A | B) will give 61 which is 0011 1101 ^ Binary XOR Operator copies the bit if it is set in one operand but not both. (A ^ B) will give 49 which is 0011 0001 ~ Binary Ones Complement Operator is unary and has the effect of 'flipping' bits. (~A ) will give -61 which is 1100 0011 in 2's complement form due to a signed binary number. << Binary Left Shift Operator. The left operands value is moved left by the number of bits specified by the right operand. A << 2 will give 240 which is 1111 0000 >> Binary Right Shift Operator. The left operands value is moved right by the number of bits specified by the right operand. A >> 2 will give 15 which is 0000 1111
  • 25. C++ Operators Contd.. Assignment Operators • There are following assignment operators supported by C++ language 25 Operator Description Example = Simple assignment operator, Assigns values from right side operands to left side operand. C = A + B will assign value of A + B into C += Add AND assignment operator, It adds right operand to the left operand and assign the result to left operand. C += A is equivalent to C = C + A -= Subtract AND assignment operator, It subtracts right operand from the left operand and assign the result to left operand. C -= A is equivalent to C = C - A
  • 26. C++ Decision Control Statements The decision control statements are the decision making statements that decides the order of execution of statements based on the conditions. In the decision making statements the programmer specify which conditions are to be executed or tested with the statements to be executed if the condition is true or false. CONTROL STATEMENTS ARE OF THREE TYPES Branching (if, if-else, else-if, switch) Jumping (break, continue, goto) Looping (while, do-while, for) 26
  • 27. If Statement The if statement consists a condition which is followed by one or some of the statements, if the condition is true then the statements will be executed or else not. This statement is the simple and easy decision control statement. if (condition) { //statements to be executed if condition is true } 27 Branching Statements
  • 28. Branching Statements Contd.. If-Else Statement In the if-else statement the if statement is followed by the else statement which will execute when the expression is false. if (condition) { //statement will execute if the condition is true } else { //statement will execute if the condition is false } 28
  • 29. Branching Statements Contd.. Else-If Ladder • Here, a user can decide among multiple options. The C if statements are executed from the top down. As soon as one of the conditions controlling the if is true, the statement associated with that if is executed, and the rest of the C else-if ladder is bypassed. If none of the conditions are true, then the final else statement will be executed. 29 int time = 22; if (time < 10) { cout << "Good morning."; } else if (time < 20) { cout << "Good day."; } else { cout << "Good evening."; }
  • 30. iff (nested if) if (condition1) { // Executes when condition1 is true if (condition2) { // Executes when condition2 is true } } 30
  • 31. Branching Statements Contd.. SWITCH Statement Switch case statement evaluates a given expression and based on the evaluated value(matching a certain condition), it executes the statements associated with it. Basically, it is used to perform different actions based on different conditions(cases). • Switch case statements follow a selection-control mechanism and allow a value to change control of execution. • They are a substitute for long if statements that compare a variable to several integral values. • The switch statement is a multiway branch statement. It provides an easy way to dispatch execution to different parts of code based on the value of the expression. 31
  • 32. 32 Syntax: switch (n) { case 1: // code to be executed if n = 1; break; case 2: // code to be executed if n = 2; break; default: // code to be executed if n doesn't match any cases } Some important keywords: 1) Break: This keyword is used to stop the execution inside a switch block. It helps to terminate the switch block and break out of it. 2) Default: This keyword is used to specify the set of statements to execute if there is no case match.
  • 33. 33 // C++ program to demonstrate syntax of switch #include <iostream> using namespace std; // Driver Code int main() { int x = 2; switch (x) { case 1: cout << "Choice is 1"; break; case 2: cout << "Choice is 2"; break; case 3: cout << "Choice is 3"; break; default: cout << "Choice other than 1, 2 and 3"; break; } return 0; }
  • 34. Loops 34 Loops in programming come into use when we need to repeatedly execute a block of statements. For example: Suppose we want to print “Hello World” 10 times. This can be done in two ways as shown below: Iterative Method An iterative method to do this is to write the cout<<…; statement 10 times. // C program to illustrate need of loops #include <iostream.h> int main() { cout<< "Hello Worldn"; cout<< "Hello Worldn"; cout<< "Hello Worldn"; cout<< "Hello Worldn"; cout<< "Hello Worldn"; cout<< "Hello Worldn"; cout<< "Hello Worldn"; cout<< "Hello Worldn"; cout<< "Hello Worldn"; return 0; }
  • 35. Loops Contd.. • In Loop, the statement needs to be written only once and the loop will be executed 10 times as shown below. In computer programming, a loop is a sequence of instructions that is repeated until a certain condition is reached. • There are mainly two types of loops: 1.Entry Controlled loops: In this type of loops the test condition is tested before entering the loop body. For Loop and While Loop are entry controlled loops. 2.Exit Controlled Loops: In this type of loops the test condition is tested or evaluated at the end of loop body. Therefore, the loop body will execute at least once, irrespective of whether the test condition is true or false. do – while loop is exit controlled loop. 35
  • 36. For Loop A for loop is a repetition control structure which allows us to write a loop that is executed a specific number of times. The loop enables us to perform n number of steps together in one line. Syntax: • for (initialization expr; test expr; update expr) • { • // body of the loop • // statements we want to execute • } 36 Loops Contd..
  • 37. Loops Contd.. 37 // C++ program to illustrate for loop #include <iostream> using namespace std; int main() { for (int i = 1; i <= 10; i++) { cout << "Hello Worldn"; } return 0; }
  • 38. Loops Contd.. While Loop • While studying for loop we have seen that the number of iterations is known beforehand, i.e. the number of times the loop body is needed to be executed is known to us. while loops are used in situations where we do not know the exact number of iterations of loop beforehand. The loop execution is terminated on the basis of test condition. Syntax: initialization expression; while (test_expression) { // statements update_expression; } 38
  • 39. Loops Contd.. 39 // C++ program to illustrate while loop #include <iostream> using namespace std; int main() { // initialization expression int i = 1; // test expression while (i < 6) { cout << "Hello Worldn"; // update expression i++; } return 0; }
  • 40. Loops Contd.. Do-While Loop The main difference between do while loop and while loop is in do while loop the condition is tested at the end of loop body, i.e do while loop is exit controlled whereas the other two loops are entry controlled loops. Note: In do while loop the loop body will execute at least once irrespective of test condition. Syntax: initialization expression; do { // statements update_expression; } while (test_expression); 40
  • 41. Loops Contd.. 41 // C++ program to illustrate do-while loop #include <iostream> using namespace std; int main() { int i = 2; // Initialization expression do { // loop body cout << "Hello Worldn"; // update expression i++; } while (i < 1); // test expression return 0; }
  • 42. Loops Contd.. Infinite Loop A loop becomes infinite loop if a condition never becomes false. The for loop is traditionally used for this purpose. Since none of the three expressions that form the ‘for’ loop are required, you can make an endless loop by leaving the conditional expression empty. 42 #include <iostream> using namespace std; int main () { for( ; ; ) { printf("This loop will run forever.n"); } return 0; }
  • 43. Jump Statements in C++ These statements are used in C or C++ for unconditional flow of control through out the functions in a program. They support four type of jump statements: • Break • Continue • Goto Break: This loop control statement is used to terminate the loop. As soon as the break statement is encountered from within a loop, the loop iterations stops there and control returns from the loop immediately to the first statement after the loop. Syntax: Break; Basically break statements are used in the situations when we are not sure about the actual number of iterations for the loop or we want to terminate the loop based on some condition. 43
  • 44. Jump Statements in C++ Contd.. 44 #include <iostream> using namespace std; int main() { int count = 0; cout<<"C++ Break Statement"; while(count <= 10){ count = count + 1; if(count == 5){ break; } cout<<"nInside loop "<<count; } cout<<"nOut of while loop"; return 0; }
  • 45. Jump Statements in C++ Contd.. Continue Statement This loop control statement is just like the break statement. The continue statement is opposite to that of break statement, instead of terminating the loop, it forces to execute the next iteration of the loop. As the name suggest the continue statement forces the loop to continue or execute the next iteration. When the continue statement is executed in the loop, the code inside the loop following the continue statement will be skipped and next iteration of the loop will begin. Syntax: Continue; 45
  • 46. Jump Statements in C++ Contd.. 46 // C++ program to explain the use // of continue statement #include <iostream> using namespace std; int main() { // loop from 1 to 10 for (int i = 1; i <= 10; i++) { // If i is equals to 6, // continue to next iteration // without printing if (i == 6) continue; else // otherwise print the value of i cout << i << " "; } return 0; }
  • 47. Goto Statement 47  Used to jump unconditionally from one point to another point in the program.  General form : goto label; -------------- label: statement; -------------- label: statement; -------------- goto label; -------------- or
  • 48. Goto Statement 48  About label: • A label must be a valid identifier,  don’t use an integer as a label. • A label can only mark executable statement,  and can’t mark declaration statement. • A label is unique in a function  Don’t use the same label to mark different statements.
  • 49. Goto Statement Flowchart 49 Start Statement 1 Statement 2 Statement 3 Label 1: Label 2: Label 3: Goto Label 3 Stop #include <iostream> using namespace std; int main() { int number, n; int fact=1; cout<<"Enter a number: "; cin>>number; n = number; Top: if(number>0) { fact = fact*number; number--; goto Top; } cout<<"Factorial of the given number is: "<< fact; }
  • 50. Goto Statement Contd.. 50 Figure 8 i = 1, sum=0; i = i + 1 sum = sum + I; Yes No i<=100 begin Output sum end main() { Int i=0, sum=0; loop: if(i<=100) { Sum+=i; i++; goto loop; } printf(“%d”, sum); }