Professional Documents
Culture Documents
Course Instructor:
Rabail Zahid-Lecturer (Computer Science)
Bahria University-Islamabad
Email:- rabail.buic@bahria.edu.pk
CSC 113 – Computer Programming
Ali Mirza | Department of Computer Sciences
10. Functions
Bahria University, Islamabad
Slide: 1
Contents
What is a C++ Function?
<math.h> Library Functions
Function Prototype - 1
Function Definition - 2
Function Call -3
Function Call by Value
Function Call by Reference
Taking input from user : Example
Prime Number Function : Example
Output Function : Example
Function Over Loading
Function Over Loading : sum Examples
Function with Default Argument
Scope of Variable
Calling/invoking a function
square(x);
Parentheses used to call function
Pass argument x
After finished, passes back result
Example
3 #include <iostream.h>
4
5 int square( int ); // function prototype
6
7 void main()
8 {
9 // loop 10 times and calculate and output
10 // square of x each time
11 for ( int x = 1; x <= 10; x++ )
12 cout << square( x ) << " "; // function call
13
14 cout << endl;
15
16
17 } // end main
18 // square function definition returns square of an integer
19 int square( int y ) // y is a copy of argument to function
20 {
21 return y * y; // returns square of y as an int
22
23 } // end function square
1 4 9 16 25 36 49 64 81 100
Function signature
#include <iostream.h>
void funct(int);
void main(void)
{
int x = 10;
funct(x);
cout << “ In main X : “ <<x;
}
void funct(int x)
{
x = 5;
cout << “ In the Function X : “<< x <<endl;
}
void main()
{
int x = 10;
int y = 15;
cout << “X : “ << x << “ Y: “ << y << endl;
swap(x,y);
cout << “X : “ << x << “ Y: “ << y << endl;
}
int getPositiveNumberFromUser();
bool checkPrime(int);
void printResultOfPrime(bool);
void printPrimeTillALimit(int);
void printFactorial(int);
//---------------------------------------
int main()
{
int valueForPrime = getPositiveNumberFromUser();
bool primeResult = checkPrime(valueForPrime);
printResultOfPrime(primeResult);
//---------------------------------------
//printResultOfPrime(checkPrime(getPositiveNumberFromUser()));
//---------------------------------------
int limit = getPositiveNumberFromUser();
printPrimeTillALimit(limit);
//---------------------------------------
printFactorial(getPositiveNumberFromUser());
//---------------------------------------
_getch();
}
//^^^^^^^^^^^^^^^^^^^^^2^^^^^^^^^^^^^^^^^^^^^^^^
//------------------------------------
int getPositiveNumberFromUser()
{
int number=0;
while (number <= 0)
{
cout << "Enter a Positive Number : ";
cin >> number;
}
return number;
}
//------------------------------------
bool checkPrime(int value)
{
int sq = sqrt(value) + 1;
bool prime = true;
for (int loop = 2; loop < sq; loop++)
{
if (value % loop == 0)
{
prime = false;
break;
}
}
return prime;
}
//--------------------------------------
void printResultOfPrime(bool prime)
{
if (prime)
cout << "The value is a Prime Number" << endl;
else
cout << "The value is NOT a Prime Number" << endl;
}
//--------------------------------------
void printPrimeTillALimit(int value)
{
for (int loop = 1; loop <= value; loop++)
{
if (checkPrime(loop))
cout << " " << loop;
}
}
//--------------------------------------------------------
void printFactorial(int number)
{
int factorial = 1;
for (int loop = number; loop > 1; loop--)
factorial *= loop;
cout <<endl<< "The factorial of value " << number << " is " << factorial << endl;
}