0% found this document useful (0 votes)
52 views

Functions: Com - Cplusplis - WWW

The document discusses functions in C++ programming. It covers defining and calling functions, passing parameters to functions, return values, function overloading, and recursion. Examples of different types of functions are provided. Additional resources on functions in C++ are recommended for learning purposes.

Uploaded by

Elec Tronic
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
52 views

Functions: Com - Cplusplis - WWW

The document discusses functions in C++ programming. It covers defining and calling functions, passing parameters to functions, return values, function overloading, and recursion. Examples of different types of functions are provided. Additional resources on functions in C++ are recommended for learning purposes.

Uploaded by

Elec Tronic
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 20

Compiler_x@yahoo.

com

Functions

C++

c++

www.cplusplis.com

2006
Compiler_x@ yahoo.com

[email protected]

3 .............................................................................................. functions

9 ...................................................................... void

10 ............................................................. scope of variable

Passed by value and reference

11 ..............................

13 ...................................... Default values of parameters

14 .......................................................... Overloaded functions

15 ............................................................. Recursive functions

) Declaring functions(prototype

17 .....................................

[email protected]

: functions

))(( main

-1

-2

-3

-4

..

...

"( .

)"

"(

)"

++

.++
:

)(Int main
{
.
.
.
"<<cout

;"
.
.
.
"<<cout

;"
.
.
"<<cout

;"
.
.
..
;return 0
}

[email protected]

4
)(int main
{
.
.

"<<cout

"

.
.

.
.
.

.
;return 0
}

"(

)"

"(

)"

"<<cout

"

)(int main
{
.
.

.
.

.
.
;return 0
}

[email protected]

-1

++

compiler

-2
++

-3

"

"

Type function_name (parameter1,par


a
me
t
e
r
2
,.
)
{
;statement 1
;statement 2
;statement 3
.
.
.
return value
}

.. void

long
float
int

: Type

: Function_name
.

++

: Parameter

)
.

: Statement

[email protected]

++

: Return
(.

value

:Value
type

># include <iostream.h

)int sum (int x,int y


{
;int z
;z=x+y
;return z
}

)(int main
{
;int c
;)c=sum(3,5
;cout<<" 3 + 5 = "<<c
;return 0
}

3
4
5

6
7
8
9
10

. iostram.h

sum

int

x y

int

.z

y
x

int

.c

.c

=3+5

)(. main

++

-1

[email protected]

int a

-2

compiling

sum

)sum(3,5

3,5

)sum (3,5

) int sum ( x , y

;) c=sum ( 3 , 5

. 5

x,y

)4

( return z ) 5

8 )(8=5+3

)(8

sum

sum

). c=sum (3,5

) int sum ( x , y
8
;) c=sum( 3 , 5

.8

10

[email protected]

The first result is 5


The second result is 5
The third result is 2
The fourth result is 6

// function example
>#include <iostream.h
)int subtraction (int a, int b
{
;int r
;r=a-b
;)return (r
}
)( int main
{
;int x=5, y=3, z
;)z = subtraction (7,2
;'cout << "The first result is " << z << '\n
;'cout << "The second result is " << subtraction (7,2) << '\n
;'cout << "The third result is " << subtraction (x,y) << '\n
;)z= 4 + subtraction (x,y
;'cout << "The fourth result is " << z << '\n
;return 0
}

a , b

subtraction

;)z = subtraction (7,2


;'cout << "The first result is " << z << '\n

;'cout << "The second result is " << subtraction (7,2) << '\n

cout

;'cout << "The third result is " << subtraction (x,y) << '\n

2
7

)( x,y

;)z= 4 + subtraction (x,y

;z= subtraction (x,y)+4

Z=4+2
Z=2+4

[email protected]

void

Ty
pef
unc
t
i
o
_n
(name
pa
r
a
me
t
e
r
1
,
par
a
me
t
e
r
2
,.
)
{
;statement 1
;statement 2
;statement 3
.
.
.
return value
}

...

type

++

++

(procedure

void

type

return

// void function example


>#include <iostream.h

!I'm a function
void

)( void printmessage
{
;"!cout << "I'm a function
}
) ( int main
{
;) ( printmessage
;return 0
}

printmessage

""I'm a function

. return

void

) (printmessage

void
)void printmessage(void

) (

printmessage

;)( printmessage

;Printmessage

[email protected]

10

)(void

I'm a function

// function example
>#include <iostream

the result is 8

)void addition (int a, int b


{
;cout<<"the result is"<<a+b
}
)( int main
{
;)addition (3,5
;return 0
}

void

scope of variable

local variable

global variable

[email protected]

11
>#include <iostream.h
//global variable

;int age

)]void print_info(char n[20


{
;'cout<<"name is : "<<n<<'\n
;cout<<"age = "<<age
}

//local variable

)(void main
{
;"char name[20]="my name
;cin>>age
;)print_info(name
}

global

age

print_info

print_info

local

name

print_info

name

name

Passed by value and reference

) pass by

(value

)(pass by reference

[email protected]

12

pass by reference

// passing parameters by reference


>#include <iostream.h

x=2, y=6, z=14

)void duplicate (int& a, int& b, int& c


{
;a*=2
;b*=2
;c*=2
}
)( int main
{
;int x=1, y=3, z=7
;)duplicate (x, y, z
;cout << "x=" << x << ", y=" << y << ", z=" << z
;return 0
}

duplicate

) & (

by reference

a,b,c

a b c

x y z

duplicate

a,b,c

a=1 b=3 c=7

&

x
duplicate

&

. x=1, y=3, z=7

) void duplicate ( int& a , int& b , int& c


x
y
z
;)

( duolicate

[email protected]

13
// more than one returning value
>#include <iostream.h

Previous=99, Next=101

)void prevnext (int x, int& prev, int& next


{
;prev = x-1
;next = x+1
}
)( int main
{
;int x=100, y, z
;)prevnext (x, y, z
;cout << "Previous=" << y << ", Next=" << z
;return 0
}

next

previous

& ,

& .

Default values of parameters

) = (

:
.

3
5

// default values in functions


>#include <iostream.h
)int divide (int a, int b=2
{
;int r
;r=a/b
;)return (r
}
)( int main
{
;)cout << divide (6
;cout << endl
;)cout << divide (20,4
;return 0
}

[email protected]

14

divide

)divide (6

divide

) . ( int b = 2

) . ( 6/2

)divide (20,4

( int b=2 ) b

5 . (20/4)=5

Overloaded functions

c++

10
2.5

// overloaded function
>#include <iostream.h
)int operate (int a, int b
{
;)return (a*b
}
)float operate (float a, float b
{
;)return (a/b
}
)( int main
{
;int x=5,y=2
;float n=5.0,m=2.0
;)cout << operate (x,y
;"cout << "\n
;)cout << operate (n,m
;"cout << "\n
;return 0
}

int

, operate

compiler

. float

float

. int

[email protected]

15

, int

operate

, float

operate

.(overloaded

Recursive functions

5!= 5 * 4 * 3 * 2 * 1

)!5!= 5 * (4

4!= 4 * 3 * 2 *1

(1!)*2

(2!)*3

(3!) *4

1=1

Please type a number: 5


5! = 120

// factorial calculator
>#include <iostream.h
)long factorial (long a
{
)if (a > 1
;))return (a * factorial (a-1
else
;)return (1
}
)( int main
{
;long number
;" cout << "Please type a number:
;cin >> number
;)cout << number << "! = " << factorial (number
;return 0
}

factorial

number

factorial

[email protected]

16

!3

!3

) !(4* 3

!1
)!( 2 * 1
!2
!2

)!(3*2

)factorial (5) = 5 * factorial (4

)factorial (4) = 4 * factorial(3

)factorial (3)= 3 * factorial(2

) factorial (2) = 2 * factorial (1

factorial (1) =1

// factorial calculator
>#include <iostream.h
)int power (int a,int b
{
)if (b<=1
;return a
else
;)))return (a * power(a,(b-1
}
)( int main
{
;int x=2,y=3
;)cout<<power(x,y
;return 0
}

( b

b=1

2^3

[email protected]

17
2 ^3 = 2 * 2 * 2 = 8

)power(2,3)=2 * power(2,2

)power(2,2)= 2 * power (2,1

power(2,1)=2

) (prototype

Declaring functions

// declaring functions prototypes


>#include <iostream.h
)void odd (int a
{
;"if ((a%2)!=0) cout << "Number is odd.\n
;)else even (a
}
)void even (int a
{
;"if ((a%2)==0) cout << "Number is even.\n
;)else odd (a
}
)( int main
{
;int i
{ do
;" )cout << "Type a number: (0 to exit
;cin >> i
;)odd (i
;)} while (i!=0
;return 0
}

[email protected]

18

) ( %

ood

) Number is odd.

even

odd

) ctrl+F9

debug

Run

...

even

.. even

100/100

..

odd

compiler

even

) even

even

)(Int main
{
;x=4
;int x
;cout<<x
return 0
}

..

void

even

..

++

) ; (

[email protected]

19
Type a number (0 to exit): 9
Number is odd.
Type a number (0 to exit): 6
Number is even.
Type a number (0 to exit): 1030
Number is even.
Type a number (0 to exit): 0
Number is even.

// declaring functions prototypes


>#include <iostream.h
;)void odd (int a
;)void even (int a
)( int main
{
;int i
{ do
;" )cout << "Type a number: (0 to exit
;cin >> i
;)odd (i
;)} while (i!=0
;return 0
}
)void odd (int a
{
;"if ((a%2)!=0) cout << "Number is odd.\n
;)else even (a
}
)void even (int a
{
;"if ((a%2)==0) cout << "Number is even.\n
;)else odd (a
}

even

viod

odd

odd even

void

*
:

;)Int add (int a, int b

;) Int add (int , int

*
.

[email protected]

20

2006
Compiler_x@ yahoo.com

You might also like