Top Banner
OBJECT ORIENTED PROGRAM With C++ Assis. Lect. Aymen Dawood Salman Page 1 1- Introduction to C++ غح زخ اخC اC++ ف اغرخ اغا ار اطثؽد ذا اعقح شج شHigh level language غاخ ار ذح اخش١اؼ ح١اؼ عرخذاح اس ع١ ؼ ثاعىايا غه١غاخ ت ص اصعخ ااى خاعثح ا فسذس لذ١ ؼ د اغر ا(Hardware) H/W ح٠ادخ ااى اذش١ثى اعثح اؽا . Computer System Software اخ١عثشا اHardware اخ٠اد اUser S/W System S/W - غح ضاخ١ C++ غح ضاخ١ ا اC++ عحثشخ اغا اش١ غ ف, اش١ غا ف١رفض نذف ذرضاخ ا١ ا ضاخ١ از فحقشعح اثشخ اغا -: 1 - حغح فا General Language رشغ اؾ ؽغاتاخا اخشعا اخا١ثافذ اط ل تشاق ػ ذظ ا. 2 - ح١ث١غح ذشو Structural Language غحب تىرط ااثش اC++ ذفح ذ١غ١ح سئ دا فثاسج فmain ( ) ايعرذفاء د اى٠ ا خ اخخغا شا ا فحع ح ذرى داو اخش. 3 - قح٠غح عش ز١فرلد ا خرظش٠ ا حـ ا شجثاش غح ذقااخ ا اد . 4 - غر ا ف ذرقا" ثد ا" Bit Manipulation غر اخ ف١ تقذم ش١ذغ ذىرة ذمشاءـ ا١رغس ذغ١ ؼBit , فافقش او Bit اؼذ اخ ؼشففع ء ذقاديح اظضا١ا ش ظضء ذش١ثى ا داخاخقط اا٠ ؼذج اطغش( Byte ) Byte Bit Bit Bit Bit Bit Bit Bit Bit ؽغظ سظعح اقا طتشا ختشا ارؽىخ اعا تقضرخظظح ف ارضج ظق١ از فاخ ا.
73

OBJECT ORIENTED PROGRAM WITH C++

Mar 21, 2022

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 1

1- Introduction to C++

High level ششج اعقح لاا اطثؽد ذر ا غاخ اغر الاف ++C ا Cاخزخ غح

language ص غاخ ت١غه اثاعىاي ؼ١س عح الاعرخذا اؼ١ح اؼ١ح اخش ذر ا غاخ

اىاخ ااد٠ح H/W (Hardware)اغر الاد ؼ١س لذسذا ف خاعثح ىاخ اعاص

. ؽاعثح ا اىث١ذش

Computer System

Software اثشاع١اخ Hardware ااد٠اخ

User S/W System S/W

++١Cضاخ غح - ا١ضاخ ار ذذفن رفض١ا ف غ١شا , ف غ١شا غاخ اثشعح ++Cا ا ١ضاخ غح

:- غاخ اثشعح اقشفح ز ا١ضاخ

General Languageغح فاح -1

. ا ذظػ ق تشاط لافذ اث١ااخ اشعاخ اؽغاتاخ ؾ ارشغ

Structural Languageغح ذشو١ث١ح -2

خلاا ٠ى اعرذفاء داي ( ) main فثاسج ف داح سئ١غ١ح ذذف ++Cاثشاط اىرب تغح

. اخش و داح ذرى عفح الااش اخغاخ

غح عش٠قح -3

. لا اداخ اغح ذقا ثاششج ـ الاح ا ٠خرظش لد ارف١ز

Bit Manipulation" اثد " ذرقا ف اغر -4

Bitوا قشف فا , Bitؼ١س ذغرغ١ـ ا ذمشاء ذىرة ذغ١ش ذم تق١اخ ف غر

اطغش ؼذج ٠اط اقاخ داخ اىث١ذش ظضء شا١ح اظضاء ذقادي عفاخ ؼشف اؼذ

(Byte )

Byte Bit

Bit

Bit

Bit

Bit

Bit

Bit

Bit

ز ا١ضج ظقرا رخظظح ف تقض عالاخ ارؽى الا اشتخ تشاط قاعح اظس ؽغظ

.افاخ

Page 2: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 2

( Portable)غح رمح -5

. الاظضج ارعغح اىث١شج IBM ٠ق ـ اوصش ظاص ص ++Cا ٠ى اتشاط اىرب تغح

ذر١ض اىث١ذشاخ ف اثشش تىا

. ذغرغ١ـ اىث١ذشاخ ا ذخض و١اخ وث١شج اقاخ -1

.ذغرغ١ـ ا ذرزوش ذه اقاخ تغشفح دلح -2

.ذغرغ١ـ ا ذفز اق١اخ اؽغات١ح تغشفح فا١ح تذلح صا١ح -3

2- C++ Program Structure

- You need to know what components are necessary to create a C++ program and

how to enter and run a program in Turbo C++.

STEP 1: Analyze the problem اشىح ذؽ١

- Begin with a clear idea of what you want a program to do.

- Most programs are written to solve a problem.

- Consider what sort of input the program needs to work with and what the

program will provide as output.

- As you analyze the problem, it is usually best to get pen and paper together and

write down on paper exactly what the program going to do.

STEP 2: Design the program

- Decide how the program will work.

- Work any algorithms required by the program.

STEP 3: Implement the program by writing code

- Design the cod to carry out the goals of your program description.

- You know ledge of the language is most important at this step.

- To implement the program you need to know the C++ programming statement

and instruction.

- This is the step in which you start using IDE (Integrated Development

Environment) to type in and edit the source code for the program

STEP 4: Compile and run the program

- Before you can actually execute the program, you most compile it. Because the

IDE (Integrated Development Environment) has the compiler integrated into it,

the compilation step is fast and easy.

- Compilation is converted from high-level source code to the machine-level

(low-level) instruction. - The compiler also makes sure that the program you typed in is grammatically

correct.

Page 3: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 3

- Just as the English language has rules of grammar and structure that are correct,

the compiler has rules of grammar and structure it understands.

Machine-level ا High-level ف١ح ذؽ٠ Compilationف١ح

Compilerاعاع١ح ٠عش ف١ح ذظؽ١ػ الاخغاء اظدج ف اثشاط لافذ خغاخ.

STEP 5: Test and Debug the program

3- A Simple C++ Program

Listing 1: shows our first C++ program, which when run, simply output the

message (Hello World).

٠ثذأ اثشاط تاقثاسج< . Hافاع ># include اع اف ارظ١ اخاص < > ت١ اقلار١

. تاذاي اغرخذح ف اثشاط

٠رى اثشاط داح سئ١غ١حmain( ) { ذر تامط } ذثذأ تامط .

ظ١ـ واخ داي اغح ذىرة تاؽشف اظغ١شج.

ـ ظد اعرصاءاخ (4)وا ف اغغش سل ( ; )ذر و فثاسج تفاطح معح.

٠عص وراتح ا لاؼؾاخ ا ذق١ماخ(Comments) تذا٠ح */ خاطح تاثشط تضقا ت١ اقلار١

ذضـ ز اقلاح // اا ف ؼاح و ارق١ماخ عغش اؼذ . ف ا٠ح ارق١ك لا فذد اغغس /*

.ف تذا٠ح اغغش

< . Hافاع ># include تق اشر ا ؼ ؽر٠اخ زا اف ا اثشاط ؼ١س ا زا

ؼ ا اضف ؽر٠اخ ) اغغش قا include ف اذ١ ++Cاف ظد ـ ؼضح تشاط غح

لا زا اف ٠ؽر ف ذقش٠فاخ اذاي ار عف ذغرخذ ف اثشاط . (زا اف ا اثشاط

.ا ف ا و عفح داي داي اغح ا ف خاص تا ٠عة وراتح ف اي اثشاط

٠ؽر اثشاط ف فثاسجmain( ) ز اقثاسج اذاح اشئ١غ١ح ثشاط ؼ١س ا اثشاط عف

. اذاح اشئ١غ١ح ار ذاد تال اذاي( )٠mainرشوة عفح داي ى اذاح

1- # include <iostream.h>

2- void main ( )

تذا٠ح اذاح } -3

4- cout <<''Hello world\n'';

ا٠ح اذاح { -5

Page 4: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 4

Example:-

/* First program

Name: Hello world in C++ by Comments ذق١ك

Class: A or B */

# include <iosteream.h> // I/O library

void main ( ) // name of function

{ // Body of function

cout << "Hello, world!" << endl; ق ز اذاح تذا٠ح عغش ظذ٠ذ

}

Escape Sequence تسلسلاث الهروة

: " \n " الارماي ا عغش ظذ٠ذ new line

: " \t " غافاخ 8 م اؤشش تقذ tap

عثافح فلاح الاعرفا " ?\ " :

double quotation عثافح فلاح ارخظ١ض " "\ " :

Single quotation عثافح " '\ " :

back slash عثافح " \\ " :

Example: - H.W

# include <iosteream.h>

# include <conio.h>

void main ( )

{

clrscr ( );

cout << "matrix";

cout << "\t matrix";

cout << "matrix \n";

cout << "matrix \n\n";

cout << "matrix \?"

cout << "matrix \"";

}

Page 5: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 5

Exercises

1. Write C++ program Run the table

Name First yeare end yeare

Ahmade 1990 1994

Ali 1995 2000

2. Write C++ program print the string :

Computer "and Information" Dep

3. Write C++ program print the string :

The Tap Character is represented as '\t'

4. Write C++ program print the string :

The new line escape sequence is '\n'

Page 6: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 6

4- Data type اىاع البيببث

٠غرق , تالاضافح ا ره . (text)ا ظ١ح (digit) فادج اا سل١ح . ذأذ اث١ااخ ف فذج اشىاي

6.1-)ت١ا ذغرق اث١ااخ اشل١ح الاخش اسلاا ؼم١م١ح (65 , 0 , 7-)تقض اث١ااخ اشل١ح اسلاا واح

, 7.3 , 0.6 .)

ت ف و١ح ازاوشج اغتح رخض٠ , ٠ؤشش ؿ اث١ااخ از خراس ف شى ذخض٠ اث١ااخ فؽغة

. اث١ااخ ا٠ضا

اذ اغغ Bytesع تاثا٠د ؿ ارغ١ش

ؼشف اؼذ ا سض char 1ؼشف

32768ا int 2 -32768فذد طؽ١ػ

long 4 2014704830648فذد طؽ١ػ

float 4 383.4فذد ؼم١م

double 8 30817فذد ؼم١م ضافف

ا ؼع ؿ اث١ااخ ٠ا ف غأر١ شذثغر١

ام١ اخرفح ار لذ ٠صا ؿ اث١ااخ : (اذ)اغاق (1)

و١ح ازاوشج اغتح رخض٠ ؿ اث١ااخ (2)

Example: - ايجبد هسبحت الوستطيل ببستخذام قين ثببتت: (1) سؤال

# include <iosteream.h>

void main ( )

{

int length, width, area;

length = 20;

width = 15;

area = length * width;

cout <<" The area =" << area << endl;

Page 7: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 7

The algorithm to find the perimeter and area: Step1: Get the length of rectangle.

Step2: Get the width of rectangle.

Step3: Find perimeter using the following equation perimeter

= 2* (length+ width).

Step4: Find the area using the following equation area = length * width.

Example -: ايجبد هسبحت الوستطيل ببستخذام قين هتغير للطىل والؼرض (: (2)سؤال

# include <iosteream.h>

void main ( )

{ int length, width, area;

cin >> length;

cin >> width;

area = length * width;

cout <<" The area =" << area << endl;

}

Example:-

# include <iosteream.h>

void main ( )

{

int length, width, area;

cout <<" Enter the value of length =";

cin >> length;

cout <<" Enter the value of width =";

cin >> width;

area = length * width;

cout <<" The area =" << area << endl;

}

ذف١ز اثشاط

Enter the value of length =

10

Enter the value of width =

9

The area = 90

star

Input length

and width

Compute the area of

triangle

Output the

area

end

Page 8: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 8

5- Operator الوؤثراث

.اؤششاخ اشص ار ذشتظ ت١ ارغ١شاخ اصاتد لاشاء فلالح ا ا قادح ذؤد ؽ١فح ق١ح

1. Arithmetic Operator الوؤثراث الحسببيت

Operator Name

+ Addition

- Subtraction

* Multiplication

/ Division

int ٠شرشط ا ٠ى ؿ ت١ااخ ؿ % Remainder 13%3

2. Relational Operator هؤثراث الوقبرت

Operator Name Example gives

= = Equality 5==5 1

! = Inequality 5=!5 0

< Less Than 5<5.5 1

< = Less Than or equal 5<=5 1

> Great or Than 5>5.5 0

> = Great or Than or equal 6.3>=5 1

Where 1 = True

0 = False

3. Logical Operators

Operator Name Example gives

! Not Logical Negation !(5==5) 0

& & Logical And 5<6 &&4<6 1

|| Logical Or 5<6 || 6<5 1

4. Increment \ Decrement Operators

Operator Name Example gives

+ + auto Increment K=5 ++k+10 16

- - auto Decrement - -k+10 14

Page 9: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 9

5. Assignment Operator

Operator Name Example gives

= n = 5 n = 5

+ = n + = 25 n = n + 25 n = 30

- = n - = 25 n =n – 25 n = -20

* = n * = 25 n =n * 25 n = 125

/ = n / = 25 n = n / 25 n = 0.2

% = n % = 25 n = n % 25 n =

An arithmetic expression may contain one or more sets of parentheses. In such

expression, you must deal with parentheses first. Start with the innermost set of

parentheses and evaluate the sub expressions according to the following rules.

1. First do all multiplication and / or division operators, including modulus (%)

operators. All three have the same priority. Then do all additions and

subtractions. These operators also have the same precedence as each other.

2. If there are several operators of the same precedence, they have left

associatively, so perform the operation from left to right.

Let us now apply the rules to the following arithmetic,

12m + (mn % 13 + m/n) * k/10

Assume m = 12 , n = 5 and k = 20

sub expression Result Expression After Each step

m * n 60 m*12+(60%13+m/n)*k/10

60 % 13 8 m*12+(8+m/n)*k/10

M / n 2 m*12+(8+2)*k/10

8 + 2 10 m*12+10*k/10

m * 12 144 144+10*k/10

10 * k 200 144+200/10

200 /10 20 144+20

144 + 20 164 164

Example:-

m + n=p = 10 / m = m + (n = p = 10)

Page 10: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 10

5. Conditional Operator

condition ? exp1 : exp2

Example: - A C++ program for computing the volume of a sphere.

V = 4 * *r3

/ 3

# include <iosteream.h>

void main ( )

{ float r, v; // declare variables . r is radius. v is volume

float pi = 3.14 // set value of pi

cout <<" Enter the radius r = ";

cin >> r; // read from keyboard

v = (4.0 * pi * r * r * r)/3.0;

cout <<" \ n v = " << v << endl;

}

Example: -

x + 3 x > b

y =

x2- 10 x b

Sol:

y = (a > b)? x + 3: x * x - 10; condition exp1 exp2

Page 11: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 11

Example: - اورة تشاط لا٠عاد وفح طشف اغالح اىشتائ١ح فا تا ذىفح ؼذاخ

اغالح اىشتائ١ح ؼغة اذ ف اعذي ارا

counter Cost/unit

0 - 100 20

101-150 30

151 - 50

counter 70 : cost = 70 * 20

counter 130 : cost = 100 * 20 + 30 * 30

counter 200 : cost = 100 * 20 + 50 * 30 + 50 *50

# include <iosteream.h>

void main ( )

{int a, cost;

cout <<" Enter the value of units:";

cin >> a;

cost = (a < = 100) ? a * 20: (a < = 150)? 100 * 20 +

(a - 100) * 30: 100 * 20 + 50 * 30 + (a - 150) * 50;

cout <<" The cost = "<< cost << endl;

}

star

a<=100

read a

a<=50

y=a*20 y=100*20+(a-100)*30 y=100*20+50*30+(a-150)*50

end

print y

Page 12: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 12

Exercises

1. Write a program which inputs a temperature reading expressed in Fahrenheit and

output its equivalent in Celsius, using the formula:

C0=

9

5 (F - 32)

Compile and run the program, its behavior should resemble this:

Temperature in Fahrenheit: 41

41 degrees Fahrenheit = 5 degrees Celsius.

2. Write a program or the following computations

a) Z = 1- !2

2

x + !4

4

x

b) Z = 22

42

23

X

X

xxx

c) W = [ )(2

yx - (x + y)] / 32.0

3. Give the length and width of a rectangle, write a program to compute and display

its area and perimeter as shown below:

O/P length width area perimeter

100 50 5000 300

4. we consider the arithmetic expression

a * b / (- c * 31 % 13) * d

What is the order in which the operations will be curried out?

5. consider the expression

a * (b * b) – (c * b) + d

What is the order in which the operations will be executed?

6. What is the evaluation sequence of the following expression if a=10.0 , b=20.0 ,

c=14.0 , d=8.0 , and e=40.0 .

(a + b / (c - 5.0)) / ((d + 7.0) / (e - 37.0) / 3.0)

Page 13: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 13

7. The expression (a % b) and (a – (a/b) * b), where a and b are integer variable, are

equivalent. (T or F).

8. For each the following algebraic expressions write an equivalent C++ arithmetic

expression.

a) 17

3

33

dba

b) x

1+

x2

1 +

x3

1 +

x4

1

c) x + y2

+ z

t

Page 14: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 14

Statements

- Simple and compound statements

A simple statement is a computation terminated by a semicolon

int i ;

++ i ;

cout << i ;

Multiple statements can be combined into a compound statement by enclosing

them within braes

{int min , i=10 , J=20

cout << " the min value =";

cout << min <<end L;

}

Conditional statements

1) if statements

2) if ….. else statements

3) if ….. else if statments

4) Nested if statements

5) Switch statements

1) if statements if الجولت

( True) رف١ز ظح ا اوصش عة ششط ق١ ف ؼاح و اششط طؽ١ػ ifذغرخذ اعح

if (exp.)

statement;

Exp.

statements

Page 15: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 15

2) if ….. else statement

if (condition)

statement 1;

else

statement 2;

Example: اورة تشاط ٠فؽض ارا وا اقذد از ٠ىرث

.اغرخذ سل صظ ا فشد

# include <iosteream.h>

void main ( )

{ int n;

cout <<"Enter a number = ";

cin >> n;

if (n % 2 = = 0)

cout <<" The number is even " << endl;

}

Exp.

star

end

Read no.

print

Exp.

Statement 1 Statement 2

Page 16: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 16

3- The if ….. else if …. else statements

if (condition 1)

statement 1;

else if (condition 2)

statement 2;

else if (condition 3)

statement 3;

else

statement 4;

Example 2: - اورة تشاط ؽ اقادح ارا١ح

x+3 x > 10

y =

10x x 10

1- Using if else statement.

# include <iosteream.h>

void main ( )

{ float y, x;

cout <<"Enter value of a =";

cin >> x;

if (x>10)

y=x+3;

else

y = 10*x;

cout <<" The value of y =";

}

2- By using conditional operator.

y = (a>10)? a+3: a*10;

Exp2

Statement 2 Statement 3

Exp1 Exp3

Statement 1 Statement 4

Page 17: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 17

Example: - اثشاط ٠ضػ ذمذ٠ش و دسظح if-else if اثشاط ارا ٠ضػ اعرخذا

# include <iosteream.h>

void main ( )

{ int s;

cout <<" Enter your test score =";

cin >> s;

if (s>=90)

cout <<" your grade is exhalent" << endl;

else if (s>=80)

cout <<" your grade is very good" << endl;

else if (s>=70)

cout <<" your grade is good" << endl;

else if (s>=60)

cout <<" your grade is med" << endl;

else if (s>=50)

cout <<" your grade is a pass"<< endl;

else

cout <<" your grade is a not pass ";

}

Example: - (/ , * , - , +) اورة تشاط ٠فز اق١اخ اؽغات١ح

# include <iosteream.h>

3- void main ( )

{ float x,y; char op;

cout <<"Enter value of x =";

cin >> x;

cout <<"Enter value of y =";

cin >> y;

cout <<"Enter operator =";

cin >> op;

if (op = =' + ')

cout << x+y;

else if (op = =' - ')

cout << x-y;

else if (op = =' * ')

cout << x*y;

else if (op = = ' / ')

cout << x/y;

else

cout <<"unknown operator" <<op;

}

Page 18: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 18

4) Nested if statement if (condition 1)

if (condition 2)

if (condition n)

statement;

Example: y = x2 10 < x 100

if (x>10)

if (x <= 100)

{y = x * x;

cout << y;

}

OR

If (x > 10 && x <= 100)

{y = x * x;

cout << y;

}

Exp2 Exp1 Exp3

Statement

Page 19: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 19

ااؿ اث١ااخ اض

ASCII character

48 – 57 0 - 9

65 – 90 A – Z

97 – 122 a - z

Example: - A digital thermostat displays the following massages a

cording to the temperature in your house, in Celsius,

Cold Chilly Good Warm Hot

10 - 14 15 -19 20 - 24 25 – 29 30 and higher

Write a nested if – else statement for the above conditions.

If (temperature > 14)

If (temperature > 19)

If (temperature > 24)

If (temperature > 29)

cout << "Hot" << endl;

else cout << "Warm" << endl;

else cout << "Good" << end;

else cout << "Chilly" << endl;

else cout << "Cold" << endl;

Page 20: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 20

5) Switch statement اا ذم١ ل١ح ذقث١ش سل طؽ١ػ ش ذماس ذه ام١ح . if /else if / else شات عح Switchاعح

. تم١ر١ اخش١٠ ا اوصش ذؽذ٠ذ ا ؼاح ٠عة ذف١زا

switch (ecxpression)

{ case const 1: statement 1; break;

case const 2: statement 2; break;

:

case const n: statement n; break;

default: statement n+1;

}

Statement 2

Statement 3

Case

value1 Statement 1

Statement 4

break

expression

Case

value2 break

Case

value3

default

break

Page 21: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 21

# include <iosteream.h> void main ( )

{ char g;

cout <<"Enter your grade";

cin >> g;

switch (g)

{

case 'A':

cout <<"In your average must between 90 – 100" ; break;

case 'B':

cout <<"In your average must between 80 – 89" ; break;

case 'C':

cout <<"In your average must between 70 – 79" ; break;

case 'D':

cout <<"In your average must between 60 – 69" ; break;

case 'E':

cout <<"In your average must between 50 – 59" ; break;

default:

cout <<"your average must between 0 – 49" ;

}

}

# include <iosteream.h> void main ( )

{ float x,y; char op;

cout<<"enter value of x and y="

cin>>x>>y;

cout<<”enter operator”;

cin>>op;

switch(op)

{

case '+': cout<<x+y; break;

case '-': cout <<x-y ; break;

case '*': cout <<x*y; break;

case '/': cout <<x/y; break;

default: cout <<"unknown operator" <<op;

}

}

Page 22: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 22

H.W

2 x2

+ 4 0 < x 100

1- y = 0 x 0

x2

+ x + 2 x > 100

2- Write program to find the number if positive, negative or zero.

4- If a=1 , b=2 , and c=3 , what are the values of a,b and c at the end of the

following program segment? if (a <= b)

if (c > 2)

c =2;

if (c < 3)

a = 0;

else

b = 0;

if (ch >= '0' && ch <= '9')

cout << "kind = digit";

else if (ch >= 'A' && ch <= 'Z')

cout << "kind = capital letter";

else if (ch >= 'a' && ch <= 'z')

cout << "kind = small letter";

else

cout << "kind = special";

5- What is the exact output of the following program? #include <iostream.h>

void main( )

{for( int c=7; c<=16;c++)

switch(c % 10)

{case 0: cout<<", "; break;

case 1: cout<<"OFTEN "; break;

case 2: case 8: cout<<"IS "; break;

case 3: cout<<"NOT "; break;

case 4: case 9: cout<<"DONE "; break;

case 5: cout<<"WELL "; break;

case 6: cout<<". "; break;

case 7: cout<<"WHAT "; break;

default: cout<<" bad number. ";

}

cout<<endl;

Page 23: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 23

6- suppose the input is 5. What is the value of alpha after the following C++ code

execute? cin>>alpha;

switch(alpha)

{case 1:

case 2: alpha = alpha + 2; break;

case 4: alpha ++;

case 5: alpha = 2 * alpha;

case 6: alpha = alpha +5; break;

default: alpha --;

}

7- suppose the input is 3. What is the value of b after the following C++ code

execute? cin>>b;

switch(b)

{case 3: b = b + 3;

case 1: b ++; break;

case 5: b = b +5;

case 4: b = b +4;

}

8- suppose the input is 3. What is the value of b after the following C++ code

execute? cin>>a;

if (a>0)

switch(b)

{case 1: a = a + 3;

case 3: a ++; break;

case 6: a = a + 6;

case 8: a = a * 4; break;

default: a --;

}

else

a=a + 2;

Page 24: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 24

H.W

Q1: write C++ program to input a character and cheek if it is a VOWEL LETTER

(a,e,u,i,o) using switch-break statements.

Q2: write C++ program that takes as input given lengths expressed in feet and

inches. The program should then convent and output the length in centimeters.

Assume that the given length in feet and inches are integers. (using the

approximation that 1 inch is equal to 2.54 cm) and (1foot is equal to 12 inches).

Ex: - input 5 feet and 7 inches

Total inches = (12 * feet) + inches

= 12 * 5 + 7

= 67

Centimeters = Total inches * 2.54

= 67 * 2.54

= 170.18

Q3: write C++ program that takes as input any change expressed in cents. It should

then compute the number of half-dollars , quarters, dimes, nickels and pennies to be

returned, returning , as many half-dollars as possible, then quarters, dimes, nickels

and pennies, in that order.

For example, 646 cent yields the following calculation:

1. Change = 646

2. Number of half-dollars = 646 50 =12

3. Remaining changes = 646 % 50 = 46

4. Number of quarters = 46 / 25 = 1

5. Remaining change = 46 % 25 = 21

6. Number of dimes = 21 / 10 = 2

7. Remaining change = 21 % 10 = 1

8. Number of nickels = 1/5 = 0

9. Number of pennies = remaining change = 1 % 5 = 1

Q4: write C++ program that prompts the user to input a length expressed in

centimeters. The program should then convert the length expressed in yards, feet, and

inches, in that order. (1 yard = 36 feet and 1 feet = 12 inches)

For example 123 inches would be outputs as:

3 yards, 1 feet and 3 inch

Page 25: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 25

Loops

1) For loop for اذاسج

: ذغرخذ رىشاس ذف١ز ف١ح فذد ؽذد اشاخ ذاخز اظ١غح اقاح ارا١ح

ؼ١س ا

initial – valueام١ح الاترذائ١ح .

conditionششط ااء ارىشاس .

incrementل١ح اص٠ادج اذس٠ح .

طؽ١ػ مذاس (condition)عاا ا اششط (initial – value)قا اتذاء اقذ ام١ح الاترذائ١ح

incrementاض٠ادج و شج

for (( initial-value ; condition ; increment ))

exp.1 ; exp.2 ; exp.3

statement;

out of loop

1- increasing

for (int i = 0 ; i < 10 ; i ++)

cout << i;

2- decreasing

for (int i = 9 ; i > 0 ; i --)

cout << i;

3- increasing By 2

for (int i = 0 ; i <= 100 ; i += 2)

cout << i;

4- increasing By 3

for (int i = 0 ; i <= 100 ; i += 3)

for (initial-value ; condition ; increment)

statements;

Note:-

فذا ٠ى فذد ارىشاس for loopذغرخذ

exp.1

exp2

statement

exp.3

Page 26: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 26

10 ا 1اورة تشاط ٠غثـ الافذاد

# include <iosteream.h>

void main ( )

{

for (int i = 1 ; i <= 10 ; i ++)

cout << i;

}

. 100 ا 50اورة تشاط لا٠عاد عؿ الافذاد اؽظسج ت١

# include <iosteream.h>

void main ( )

{ int sum= 0;

for (int i = 50 ; i <= 100 ; i ++)

sum += i;

cout << "the sum = "<< sum;

}

اورة تشاط لا٠عاد عؿ فششج افذاد ٠ر ادخا اشاء ذف١ز اثشاط

# include <iosteream.h>

void main ( )

{ int sum= 0, num;

for (int i = 0 ; i < 10 ; i ++)

{

cout <<"Enter your number:";

cin >> num;

sum += num;

}

cout <<"The sum=" <<sum;

}

Page 27: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 27

2) Nested For Loops

for (int i = 1 ; i <= 3 ; i ++)

for (int j = 1 ; j <= 3 ; j ++)

cout << i << "\t" << j <<"\n";

O/P فذ ذف١ز اثشاط

i j

Loop 1 1 Loop

داخ 2 1 خاسظ

1 3

2 1

2 2

2 3

3 1

3 2

3 3

1. Write a C++ program to find the factorial for the positive number. # include <iosteream.h>

void main ( )

{ int n;

long f = 1;

cout <<"Enter value of number =";

cin >> n;

if (n >= 0) // for positive number

for (int i = n; i > 0; i --)

f *= i; // f = f * i;

cout << "The factorial is =" << f;

}

2. Write a C++ program which produces a simple multiplication table

of the following format for integers in the range 1 to 9

# include <iosteream.h>

void main ( )

{ for (int i = 1 ; i <= 9 ; i ++)

for (int j = 1 ; j <= 10 ; j ++)

cout << i << "*" << j << "=" << i * j << endl;

}

Page 28: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 28

while loop اورة تشاط لا٠عاد عؿ فششج افذاد ٠ر ادخاا اشاء ذف١ز تاعرخذا

# include <iosteream.h>

void main ( )

{ int i=1, sum= 0, num;

while (i <= 10)

{

cout <<"Enter no. =";

cin >>num;

sum += num;

i ++

}

cout <<"the sum =" << sum;

}

3) While Statement

while (condition)

Statement; اظ١غح اقاح

cond.

statment

start

i<=10

cin >> num

sum+= num c++

cout<<num

End

Note:-

١ظ . ا فذ قشفح فذد ذىشاسloopف ؼاح فذ قشفح فذد شاخ اي while loop ذغرخذ

.loopتاضشسج ذف١ز

Page 29: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 29

3. Do …. While Statement

do اظ١غح اقاح

{

statement;

}

while (condition)

statement

cond;

Note:-

do ذشث while فمظ الاخرلاف ا دائا ارف١ز loop اؼذج اششط سج ٠ى ف الال

. ٠قرذ ف ارف١ز

فظ اصاي اغاتك

# include <iosteream.h>

void main ( )

{ int i=1, sum= 0, num;

do

{ cout <<"Enter value =";

cin >>num;

sum += num;

} while (num); OR while (num!=0);

cout <<"the sum =" << sum;

}

٠رلف num=0ف ؼاح و

loopاثشاط ٠خشض خاسض

:Q1 ٠ى شى اغثافح5 ا 1اورة تشاط غثافح ظذي اضشب

void main ( )

{ for (int i = 1 ; i < 6 ; i ++)

{ for (int j = 1 ; j < 6 ; j++)

cout << i * j;

cout << endl;

}

}

5 4 3 2 1

10 8 6 4 2

15 12 9 6 3

20 16 12 8 2

25 20 15 10 5

Page 30: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 30

Q2: write a program that print the following shape

4 3 2 1 j=0

* * * * * i=0

* * 1

* * 2

* * 3

* 4

*

* *

* *

* *

* * * * *

*

* *

* * *

* * * *

* * * * *

6 5 4 3 2 1 j=-0

* * i=0

* * * * 1

* * * * 2

* * * 3

* * 4

* * 5

* * 6

8 7 6 5 4 3 2 1 j=0

* i=0

* * * 1

* * * * * 2

* * * * * * * 3

* * * * * * * * * 4

8 7 6 5 4 3 2 1 j=0

* i=0

* * * 1

* * * * * 2

* * * * * * * 3

* * * * * * * * * 4

* * * * * * * 5

* * * * * 6

* * * 7

* 8

6 5 4 3 2 1 0

* * * * * 0

* * * * * 1

* * * * * 2

8 7 6 5 4 3 2 1 j=0

* i=0

* * 1

* * 2

* * 3

* * * * * * * * * 4

Page 31: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 31

Q3: write program that calculates the value of (pi) from the infite series, stop

calculation when the value of (pi) exceed 8.7235.

Pi = 4 + 4/3 + 4/5 + 4/7 + 4/9 + …….. +.

Q4: write program that finds the smallest of several integers. Assume that the first

value read specifies the number of values.

101

, 52

, 93

, 34

, …………, 18n

n = فذد ام١

Q5: write program that converts the positive integer number into binary and prints

it:-

Q6: فظ اغؤاي اغاتك ٠ؽي اقذد ا octal شا ؾا

Q7: An integer is said to be prime if it divisible only by 1 and itself. Write

program that determines if a number is prime and use this program that

determines and prints all the prime number between (10 To 30).

Q8: what is the O/P of the following program.

# include <iosteream.h>

void main ( )

{ for (int i=0 ; i< 7 – i; j <=7 + i; j ++)

{ for (int i=0 ; i< 7 – i; j <=7 + i; j ++)

cout << i * j << " ";

cout << endl;

}

}

Q9: what is the value of the int variable j at the end of the following loops if (j=0)

when the loop begins?

a- for (int i = 8; i >= 0; i = i - 3)

j = j + 1;

b- for (int i = 0; i <= 8; i = i + 2)

j = j + 1;

i = i + 1;

Q10: if (i=0) and (g=5), what are the values of i and g after the following program

segment?

while ((I <= 4) && (g > 0))

{ i = I + 1;

g = g – 1.0;

}

Page 32: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 32

Q11: Replace the following for loop with a corresponding while loop.

float a = 8;

for (int i = 0; i < 10; i ++)

{ if (a = = 0) continue;

cout << 1/a << end L;

a = a – 1;

}

Q12: what will be the output of the following fragments?

a) int x = 0;

while (x < 10)

cout << x << endl;

x = x + 1;

cout <<"Done\n";

b) char ltr;

for (ltr = 'A'; 1tr <= 'F'; 1tr = 1tr + 1)

cout << 1tr;

cout << endl;

Q13: what does this program print?

# include <iosteream.h>

void main ( )

{ for (int i=0 ; i<=10 ; i ++)

{ for (int j=0 ; j <=5; j ++)

if (i==0 || i=5 || i==1 || j==0 || j==5)

cout <<' * ';

else

cout <<' ';

cout << endl;

}

}

Q14: Rewrite the program in (Q13) by using while statements instead of for

statements and draw its flow chart.

Q15: write a program to computer the number of decimal diits that a positive

integer number has.

Page 33: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 33

((حلىل الاسئلت))

Q2: for (int i=0 ; i<=4 ; i ++)

{ for (int j=0 ; j <=4; j ++)

{ if (i==5 || j==0 || i==j)

cout <<" * ";

else

cout << " ";

}

cout << endl;

}

{ if (i==0 || j==0 || i+j =4)

cout <<' * ';

else

cout <<" ";

}

m = +1

i = m j + c (2 , 2) اؽ١ظ

2 = +2 + c

c = 0

i = j

2 = 1 + 0 (2 , 1) داخ١ح

2 = 1 + 0 j اوثش i

if (j==0 || j==6 || ((i==j) && (i<4)) || ((i+j==6) && (i<4)))

*

* *

* *

* *

* * * * *

* * * * *

* *

* *

* *

*

i j

Page 34: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 34

i = m j + c (2 , 6) m = +1

(2 , 2) m = -1 2 = +6 + c

2 = -2 + c c = -4

c = 4 i = j - 4

i = -j + 4 j = i + 4

j = 4 – i (2 , 5)

(2 , 3) 5 = 2 + 4

3 = 4 – 2 j <= (i + 4)

3 = 2

j >= (4 - i)

for (int i = 0 ; i <= 4 ; i ++)

{for (int j = 0 ; j <= 8 ; j ++)

{ if (j >= (4 - i) && j <= (4 + i))

cout <<" * ";

else

cout <<" ";

}

cout << endl;

}

Q5: Binary

{ int x, y = 0 , d , w = 1;

cout <<"Enter dec. number =";

cin >> x;

while (x > 0)

{ d = x % 2;

x = x / 2;

y = y + d * w;

w = w * 10;

}

cout << y <<" The Binary number";

}

Page 35: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 35

Q7: Prime

{ int f , z;

for (int x = 10; x <= 20; x++)

{ f = 0

for (int y = 2; y < x; y++)

{ z = x % y;

if (z == 0)

f = 1;

}

if (f == 1)

cout <<x<<" not prime "<< endl;

else

cout <<x<<" prime " << endl;

}

}

Q4:

{ int min , n;

int no; \\ no. of variable (values) in array

cout <<" Enter no. of elements = ";

cin >> no;

cout <<" Enter 1st element = ";

cin >> min;

for (int i =1; i <=no; i++)

{ cout <<" Enter next element = ";

cin >> n;

if (min > n)

min = n;

}

cout <<" The min. (smallest) value is = " << min;

}

Page 36: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 36

Arrays الوصفىفبث

ذغ ز (float)ت١ااخ ؼم١م١ح (int)ت١ااخ سل١ح (char)ذمغ١ اث١ااخ ا ت١ااخ ؼشف١ح

ى ان ااؿ . ؼ١س لا٠ى ذعضئرا ال ره, تلااؿ اشئ١غ١ح ث١ااخ (int , float , char)الااؿ

. Arrays ز الااؿ اظففاخ (Derived data type)اخش اث١ااخ ذغ تالااؿ اشرمح

ذقشف اظففح تاا عفح اقاطش ذر ا ؿ اؼذ اث١ااخ ٠خظض ا اع اؼذ

. ذمغ اظففاخ ا ظففاخ راخ تقذ اؼذ ظففاخ راخ تقذ٠

1). 1D Arrays الوصفىفت راث البؼذ

اظ١غح اقاح لافلا ف اظففاخ

Type name [size];

ؼع اظففح اع اظففح ؿ اظففح

int a[5];

int a[5] = {7,4,13,8,10};

int a[ ] = {7,4,13,8,10};

ف ؼاح فذ ذؽذ٠ذ ؼع اظففح

for (int i = 0; i < 10; i++)

cin >> a [i]; ادخاي ل١ ا اظففح

for (int j = 0; j < 10; j++)

cout << a [j] << endl; عثافح ل١ اظففح

OR cout <<"a [" << i << "]" = << a [i] << end L;

Example: - write a program to calculate the sum of array?

# include <iosteream.h>

void main ( )

{ int a [5] = {8,7,3,9,2};

int sum = 0;

for (int i =0; i < 5; i++)

sum += a [i];

cout <<" The sum =" << sum << end L;

//for calculate the average

cout <<" The average =" << float (sum)/5.0 <<endl;

}

Page 37: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 37

2). 2D Arrays الوصفىفت راث البؼذيي

اظففح ار ذشذة فاطشا ف شى طفف افذج ٠ر الافلا فا تاشى ارا

int A [5] [10];

٠ر الاشاسج ا ارقا ا . افذج (10) طفف (5) ظففح راخ تقذ٠ A.زا قا ا اظففح

. اقظش تشل اظف سل اقد

cout << A [1] [2]قا اقظش اظد ف اظف الاي اقاد اصا

ف ؼاح اظففح ٠for loopعة الارثا ا ا فذ ارقا ـ اظففح لاتذ اعرقاي دساذ

nestedاا ف ؼاح اظففح راخ اثقذ٠ فلاتذ اعرقاي ا٠غ تاذساخ ارذاخح . راخ اثقذ ااؼذ

for.

Example: - write a program to find the max no. in an array?

# include <iosteream.h>

void main ( )

{ const int size = 5;

int a [size] = {1,2,3,4,5};

int max = a [0];

for (int i = 1; i < 5; i++)

if (max < a [i])

max = a [i];

cout <<" The max number = " << max <<endl;

}

Example: - write a program to calculate the no. of even integer no. in

array.

{ const int size = 5;

int a [size] = {1,2,3,4,5};

int count = 0

for (int i = 0; i < 5; i++)

if (a [i] % 2 == 0)

count ++ ;

cout <<" The number of even number = " << count <<endl;

}

Page 38: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 38

j=0 1 2

i=0 5 4 2

C = 1 7 1 7

2 2 9 5

cout << c [0] [0] = 5

cout << c [2] [1] = 9

cout << c [2] [2] = 5

cout << c [1] [2] = 7

ادخاي ل١ ا اظففح

cout <<" input the matrix =";

for (int i = 0; i < 3; i++)

{ for (int j = 0; j < 3; j++)

cin >> a [i] [j];

}

عثافح ل١ اظففح

cout <<" input the matrix =\n";

for (int n = 0; n < 3; n++)

{ for (int m = 0; m < 3; m++)

cout << a [n] [m] << "\t";

cout << endl;

}

افغاء ل١ اترذائ١ح ظففح

int A [3] [4] = {

{7, 5, 7, 8},

{2, 3, 4, 5},

{7, 9, 8, 1}

};

Page 39: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 39

Example: - write a program to add two matrices A and B and the result

will be stored in matrix C. Let the matrices is (34)

# include <iosteream.h>

void main ( )

{ int A [3] [4], B [3] [4], C [3] [4];

A [3] [4] = {{1, 2, 3, 4},

{5, 6, 7, 8},

{9, 10, 11, 12}};

B [3] [4] = {{1, 2, 3, 4},

{5, 6, 7, 8},

{9, 10, 11, 12}};

for (in i = 0; i < 3; i++)

{ for (int j = 0; j < 4; j++)

{

C [i] [j] = A [i] [j] + B [i] [j];

cout << C [i] [j] << "\t";

}

cout << endl;

}

}

Example: - write a program to find the average of each row of a matrix

(34)

# include <iosteream.h>

void main ( )

{ int B [3] [4] = {{1, 2, 3, 4},{5, 6, 7, 8},{9, 10, 11, 12}};

int sum;

for (int r = 0; r < 3; r++)

{ sum = 0;

for (int c = 0; c < 4; c++)

sum+ = B [r] [c];

cout << float (sum)/4.0 << endl;

}

}

Page 40: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 40

Example: - write a program to exchange row2 with col3 in a matrix

(44)

# include <iosteream.h>

void main ( )

{ int B [4] [4] = {{1, 2, 3, 4},{5, 6, 7, 8},{9, 10, 11, 12}},{13, 14, 15, 16}};

int t;

for (int i = 0; i < 4; i++)

{ t = B [2] [i];

B [2] [i] = B [i] [3];

B [i] [3] = t;

}

for (int i = 0; i < 4; i++)

for (int j = 0; j < 4; j++)

cout << B [i] [j] << "\t";

cout << endl;

}

Example: - Find the max no. a primary diagonal and the min no. in a

secondary diagonal.

# include <iosteream.h>

void main ( )

{ int B [4] [4] = {{1, 2, 3, 4},{5, 6, 7, 8},{9, 10, 11, 12}},{13, 14, 15, 16}};

int max = B [0] [0];

int min = B [0] [3];

for (int i = 1; i < 4; i++)

if (max < B [i] [i])

max = B [i] [i];

for (int i = 1; i < 4; i++)

if (min > B [i] [i])

min = B [i] [3-i];

cout <<" The max =" << max << endl;

cout <<" The min =" << min << endl;

}

Page 41: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 41

Array of string هصفىفت الؼببرة الحرفيت

string ا الافلا ف عغح ؼشف stringذغرق وح عغح ؼشف مات وثح char name [10];

0 1 2 3 4 5 6 7 8 9

char a [10] = " A B C – m n p 3 9 r "; افغاء ل١ ثاششذا ا اظففح

cin افغاء ل١ ظففح تاعرخذا

for (int i = 0; i < 9; i++)

cin >> a [i];

OR

cout <<" Enter your name ";

cin >> a; Ali maged A l i m a g e d \0

cout << a << endl;

Example:- ق١ح string اورة تشاط لا٠عاد فذد الاؼشف اىث١شج ض

# include <iosteream.h>

void main ( )

{ char a [10] = "Computer Engineering";

int count = 0

for (int i = 0; i < 10; i++)

if (a [i] > = 'A' && a [i] < 'Z')

count ++;

cout <<" the number of capital characters ="

<< count << endl;

}

Example: - write a program to delete spaces from a string

# include <iosteream.h>

void main ( )

{ int p = -1;

cout <<" Enter your string ";

cin >> s;

for (int i =0; s [i]; i++)

if (s [i] ! = ' ')

s [p++] = s [i];

s [p++] = \ 0;

cout << s << endl; }

Page 42: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 42

Example: - write a program to find the length of string

# include <iosteream.h>

void main ( )

{ char s [20]; int n;

cout <<" Enter your string ";

cin >> s;

for (int i = 0; s [i]; i++)

n ++;

cout <<" The length of string =" << n << endl;

}

Example: - write a program to convert any capital letter to small in a string

# include <iosteream.h>

void main ( )

{ char s [20]; int n;

cout <<" Enter your string ";

cin >> s;

for (int i = 0; s [i]; i++)

if (s [i] >= 'A' && s [i] <= 'Z')

s [i] += 32;

cout << s << endl; }

Example: - write a program to delete a number of characters from any

position in a string. # include <iosteream.h>

void main ( )

{

int p, l , sl;

char s [10] =" ";

cout <<" Enter he position and length:";

cin >> p >> l;

sl = strlen (s);

if ((p + l) < sl)

{ for (int i = p + l; i < sl; i++)

s [i - l] = s [i];

cout << s;

}

else

cout <<" Input error: " << endl;

}

Page 43: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 43

char name [5] [10];

طفف و طف فثاسج ف وح لا (5)ا . (10)فذد افذذا (5)قا ظففح ؼشف١ح فذد طففا

ؼشف (10)٠رقذ فذد ؼشفا ف

char name [5] [10] = {{"string1"},

{"string 2"},

{"string 3"},

{"string 4"},

{"string 5"}};

ف ز اظففح ٠ى ارقا ـ ؼشف ق١ وا ٠ى ارقا ـ طف وا ف ا عغح ؼشف

string زا ذغ ز اظففح array of stringا ظففح ؼشف١ح .

Example: -

اثشاط ٠شر ف ظففح فثاسج ف عفح واخ ف١ح ٠غة اثشاط اغرخذ ادخاي

وح ط فارا واد ز اىح اؼذ اىاخ ف ظففح اىاخ ع اثشاط ترىح اق

. ؼر ٠ذخ اغرخذ اؼذ اىاخ اظج اظففحdo…whileالاعرشاس اثشاط ف دسج

{ int i = 0;

char name [10];

char name [5] [10] = {{"ahmed…."},

{"mohamed"},

{"samy…..."},

{"hamdy…."},

{"nabil……"}};

do { clrscr ( );

cout <<" \n Enter your name ";

cin >> name 2;

for (i=0; i < 5; i++)

{

if (strcmp (name2, name [i] == 0)

t = 1;

}

} while (t == 0)

}

Page 44: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 44

Q1:- write a program to exchange the primary and secondary diagonal of

matrix A.

Let A is a (44) matrix.

Q2:- write a program to convert a two dimensional array into on

dimensional array

Q3:- write a program to fill the following matrix

1 1 1 1

A = 0 1 1 1

0 0 1 1

0 0 0 1

Q4:- write a program to fill the following matrix

1 1 1 1

A = 1 2 2 2

1 2 3 3

1 2 3 4

Q5:- write a program to find the transpose of any matrix.

1 2 3 4 1 1 1 1

A = 1 2 3 4 AT= 2 2 2 2

1 2 3 4 3 3 3 3

1 2 3 4 4 4 4 4

Q6:- write a program to computer the sum of secondary diagonal element

in a square matrix of type integer.

Q7:- write a program to delete a number of characters from any position in

a string

Q8:- write a program to print any prime number in an array?

Page 45: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 45

Example3: - write a program to exchange the primary and secondary

diagonal of matrix A.

Let A is a (44) matrix.

# include <iosteream.h>

void main ( )

{ int t;

int A [4] [4] = {{1, 2, 3, 4},

{5, 6, 7, 8},

{9, 10, 11, 12},

{13, 14, 15, 16}};

for (int i = 0; i < 4; i++)

{ t = A [i] [i];

A [i] [i] = A [i] [3-i];

A [i] [3-i] = t;

}

// O/P

for (int i = 0; i < 4; i++)

{ for (int j = 0; j < 4; j++)

cout << A [i] [j] << "\t";

cout << endl;

}

}

Example4: - write a program to convert a two dimensional array into on

dimensional array

# include <iosteream.h>

void main ( )

{ int A [3] [4] = {{ }};

int B [12];

for (int i = 0; i < 3; i++)

for (int j = 0; j < 4; j++)

B [i * 4 + j] = A [i] [j];

// O/P

for (int i = 0; i < 12; i++)

cout << B [i] << endl;

}

Page 46: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 46

Example5: - write a program to fill the following matrix

1 1 1 1

A = 0 1 1 1

0 0 1 1

0 0 0 1 # include <iosteream.h>

void main ( )

{

int A [3] [4];

for (int i = 0; i < 4; i++)

for (int j = 0; j < 4; j++)

if (j >= i)

A [i] [j] = 1;

else

A [i] [j] = 0;

for (int i = 0; i < 4; i++)

{ for (int j = 0; j < 4; j++)

cout << setw(5) << A [i] [j];

cout << endl;

}

}

Example6: - write a program to fill the following matrix

1 1 1 1

A = 1 2 2 2

1 2 3 3

1 2 3 4

# include <iosteream.h>

void main ( )

{ int A [3] [4];

for (int i = 0; i < 4; i++)

{ for (int j = i; j < 4; j++)

{ A [i] [j] = i + 1;

A [j] [i] = i + 1;

}

}

for (int i = 0; i < 4; i++)

{ for (int j = 0; j < 4; j++)

cout << A [i] [j] << "\t";

cout << endl;

}

}

Page 47: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 47

Example7: - write a program to find the transpose of any matrix.

1 2 3 4 1 1 1 1

A = 1 2 3 4 AT= 2 2 2 2

1 2 3 4 3 3 3 3

1 2 3 4 4 4 4 4

# include <iosteream.h>

void main ( )

{

int t;

int A [4] [4] = {{ }, };

for (int i = 0; i < 4; i++)

for (int j = i+1; j < 4; j++)

{

t = A [j] [i];

A [j] [i] = A [i] [j];

A [i] [j] = t;

}

for (int j = i+1; j < 4; j++)

{ for (int j = 0; j < 4; j++)

cout << A [i] [j] << "\t";

cout << endl;

}

}

Example8: - write a program to computer the sum of secondary

diagonal element in a square matrix of type integer.

# include <iosteream.h>

void main ( )

{

int A [3] [3] = {{1,2,3},{4,5,6},{7,8,9}};

for (int i = 0; i < 3; i++)

{

for (int j = 0; j < 3; j++)

}

}

Page 48: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 48

Example: - write a program to reverse a Constance of array.

# include <iosteream.h>

void main ( )

{ int X [10], T;

for (int i = 0; i < 10; i++)

cin >> X [i];

for (int j = 0; j < (10/2); j++)

{ T = X [j];

X [j] = X [9-j];

}

for (int i = 0; i < 10; i++)

cout << X [i];

}

Example: - write a program to delete an item form array of a specified

position:

# include <iosteream.h>

void main ( )

{ int a [10] = { };

int pos;

cout <<"Enter position;

cin >> pos;

for (int i = pos+1; i < 10; i++)

a [i-1] = a [i];

a [9] = 0

for (int i = 0; i < 10; i++)

cout <<"a[" << i <<"] =" << a [i];

}

Page 49: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 49

Example: - write a program to insert an item into array at a specified

position:

# include <iosteream.h>

void main ( )

{ int a [10] = {1,2,3,4,5,6,7,8,9};

int item, pos;

cout <<"Enter your number";

cin >> item;

cout <<"Enter your position";

cin >> pos;

for (int i = 8; i >= pos; i--)

a [i+1] = a [i];

a [pos] = item;

for (int i = 0; i < 10; i++)

cout <<"a[" << i <<"] =" << a [i] << endl;

}

Q:- write a program to sort an integer array by using sequential

# include <iosteream.h>

void main ( )

{

int t;

int a [10] = {5,9,13,3,2,4,19,1,7,8};

for (int i = 0; i < 9; i++)

for (int j = i+1; j < 10; j++)

{

if (a [i] > [j])

{ t = a [i];

a [i] = a [j];

a [j] = t;

}

}

for (int i = 0; i < 10; i++)

cout << a [i] << endl;

}

Page 50: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 50

Structure السجل

ا ذغث١ماخ ف فا اثشاط ذغث١ماخ لافذ اث١ااخ فصلا لافذج ت١ااخ ؽف١ ذص ت١ااخ

اؽف١ ف شى ععلاخ ذرى عفح ؼمي ا ه خثشج تأخز تشاط لافذ اث١ااخ ص

(dbase) فغرقشف ا اف ٠مغ ا ععلاخ (records) اغع ٠مغ ا ؼمي(fields) دائا ذؽراض

. رقا ـ اغع وؼذج وزه ـ اؽمي وؼذج

اعرقاي اغع

خغاخ اعرقاي اغع

. اشاء اغع .1

.ذؽذ٠ذ اؽمي اغتح .2

.الافلا ف رغ١ش ؿ زا اغع .3

.ارقا ـ ؼمي زا اغع .4

٠ثذا شاء اغع ره تاعرقاي وح (4)ف اغغش سلstruct افغاء زا اغع اع data

. ى ا ذى ا وح اخشdataوح

افلا ف ؼمي اغع (7 6) ف اغغش٠ }ذثذأ ىاخ اغع تامط (5)ف اغغش سل

{تامط (8)فثشج ف رغ١ش ؿ طؽ١ػ رغ١ش ؿ ؼشف ٠ر اغع ف اغغش سل

٠ر افلا ف رغ١ش ؿ اغع ارغ١ش (9)ف اغغش سلstud تارا اخز ارغ١ش stud

.stat ؿ طؽ١ػ وزه فظش ؿ ؼشف numفظ ارشو١ة فاطثػ فظش اع

ذ افغاء ل١ ؽمي اغع ى الاؼؼ ا رقا ـ ؼم ف عع ٠ر (11 10)ف اغغش٠

.stud . numوراتح اع اؽم غثلا تاع اغع اراتـ ت١ا غح تاظسج

٠ر عثافح ل١ اؽمي ف اغع تفظ الاعب ا وراتح اع اؽم غثلا (13 12)ف اغغش٠

.اع اغع ت١ا امغح لاشاسج ا ا اؽم ذاتـ زا اغع

Example: -

1) # include <iosteream.h>

2) void main ( )

3) {

4) struct data 1) الافلا ف اغع

5) {

6) int num; 2) ؽر٠اخ اغع

7) char stat;

8) };

9) stud data stud; .data افلا رغ١شاخ ؿ اغع (3

10) stud . num = 5;

11) stud . stat = 't'; .(.) dot operat افغاء ل١ رغ١شاخ داخ اغع تاعرخذا (4

12) cout <<" stud . num ="<< stud . num;

13) cout <<"\n stud . stat =" << stud . stat;

14) }

Page 51: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 51

Example1: - complex number

# include <iosteream.h>

struct complex 1) افلا ف اغع

{ float R, I; 2) (اؽمي)ؽر٠اخ اغع

ا٠ح اغع (3 ;{

void main ( )

{

complex C1, C2, C3;

cout <<" Enter Real part of C1.R ";

cin >> C1.R;

cout <<" Enter Imaginary part of C1.I ";

cin >> C1.I;

cout <<" Enter Real part of C2.R ";

cin >> C2.R;

cout <<" Enter Imaginary part of C2.I ";

cin >> C2.I;

C3.R = C1.R + C2.R;

C3.I = C1.R + C2.R;

cout <<" The sum of Real part C3.R =" << C3.R << endl;

cout <<" The sum of Imaginary part C3.I =" << C3.R;

}

هلاحظت . ٠ى الافلا ف اوصش رغ١ش ؿ اغع وا ٠ؽذز ـ ااؿ اث١ااخ الاخش

struct data

{ int num;

char ch;

} stud1 , stud2; افلا ف ارغ١شاخ تغش٠مح اخش

Page 52: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 52

Example2: - point

# include <iosteream.h>

struct point

{

int x, y;

} P1, P2, P3;

void main ( )

{

cout <<" Enter point one P1="

cin >> P1.x >> P1.y;

cout <<" Enter point two P2="

cin >> P2.x >> P2.y;

P3.x = P1.x + P2.x;

P3.y = P1.y + P2.y;

cout <<" the point one P3=";

cout << P3.x << "\t" << P3.y;

}

Example3: - distance # include <iosteream.h>

struct distance

{ float inches;

int feet;

};

void main ( )

{

distance d1,d2,d3;

cout <<" Enter The distance d1=";

cin >> d1.feet >> d1. inches;

cout <<" Enter The distance d2=";

cin >> d2.feet >> d2. inches;

d3. inches = d1.inches + d2.inches;

d3.feet = 0;

if (d3. inches >= 12)

{ d3. inches -= 12;

d3.feet ++;

}

d3.feet = d3.feet + d1.feet + d2.feet;

cout << d3.feet <<".";

cout << d3.inches;

}

Page 53: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 53

Example4: - stud # include <iosteream.h>

struct stud

{ int m;

int c;

int l;

float av;

};

void main ( )

{ stud ali, ahmad;

ali.m = 70;

ali.c = 60;

ali.l = 90;

ali.av = (ali.m + ali.c + ali.L)/3.0;

ahmad.m = 77;

ahmad.c = 80;

ahmad.l = 93;

ahmad.av = (ahmad.m + ahmad.c + ahmad.l )/3.0;

cout <<"ali"<< ali.m << "\t" << ali.c << "\t" << ali.l << "\t" << ali.av <<endl;

cout

<<"Ahmad"<<ahmad.m<<"\t"<<ahmad.c<<"\t"<<ahmad.l<<"\t"<<ahmad.av;

}

Page 54: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 54

Nested Structure

Example5: -

# include <iosteream.h>

struct distance

{

int feet;

float inches;

};

struct Room

{

distance length;

distance widtrh;

};

void main ( )

{ Room dining; // define a room.

dining. length. feet = 13;

dining. length. inches = 6.5;

dining. width. feet = 10;

dining. width. inches = 0.0;

float l = dining. length. feet + dining. length. inches /12;

float w = dining. width. feet + dining. width. inches /12;

cout << "\n dining room are a is" << l * w << "square feet";

}

Page 55: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 55

Functions الذوال

داي فا ٠غرغ١ـ ا++C داي ث١ح ف غح cin) (coutاذاي ار اعرخذد غثما

اشح ف الاعرخذا زه ٠ىه اشاء داي ص اذاي ام١اع١ح++C ضا٠ا غح . اعرخذاا ثشط

. اظدج ف طة اغح رؤد ؽائف خرفح ا رشاتح

٠خظض زا اثشاط (ا عفح ذق١اخ ذؤد ؽ١فح ق١ح)اذاي فثاسج ف تشاط طغ١ش

. ( ) mainاع ٠ر اعرذفائ داخ اذاح اشئ١غ١ح

:- ويحقق استخذام الذالت هزايب ػذيذة ههب

فذ ذىشاس اخغاخ داخ اثشاط ؼ١س ٠ر اشاء اذاح شج اؼذج ش ٠ر اعرذفائا اوصش شج

. فذ اؽاظح ا١ا

تاعرخذا اداح ٠ظثػ اثشاط اوصش ضؼا ؼ١س ٠اخز اثشاط اشى ارشو١ث ف١ظثػ تاشى

:-ارا

# include <filenam.h>

1- function declarations; اػلاى ػي الذالت - 1

main ( )

{

2- function calling; 2 - استذػبء الذالت

}

3- function definition ( ) 3 - تؼريف الذالت

{ ;

} ;

الصيغت الؼبهت للاػلاى ػي الذالت

Type Name (list of parameters)

(ؿ اذاح) (اع اذاح) (ارغ١شاخ ا اقالاخ)

O/P I/P

Page 56: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 56

1- function declaration ٠غ تالافلا ف اذاح ٠ى ره لث اذاح اشئ١غ١ح main

٠voidى تاظسج , ف ا٠ح زا اعضء لا افلا (;)لاؼؼ افاطح امعح

line2 ( ); وح voidؿ اذاح ار عف رى فا ف١ا تقذ تارفظ١ .

2- function calling ٠ؾش ف ا ىا داخ اذاح اشئ١غ١ح main ( ) . ف١ ٠ر وراتح

واا تشاط طغ١ش تقذ امط ثذأ }ؽر٠اخ اذاح ثذأ ف اثشاط امط

تغثافح فلالح cout ذم اذاح forتىراتح ذق١اخ اذاح اذاح ا فثاسج ف داسج

.{ذر اذاح تامط ( اذاح)فذ اعرذفائا (شج 40)*( )

*اعرذفاء اذاح ف اي شج 40

------------------------------------------ *1

*0

Computer Dep.

*اعرذفاء اذاح ف شا شج 40

----------------------------------------- *1

*0

Example: -

# include <iosteream.h>

# include <conio.h>

void line2 (void); ( 1)افلا ف اذاح

void main ( )

{ clrscr ( );

line2 ( ); ( 2 ) function calling اعرذفاء اذاح

cout << "Computer Dep." << endl;

line2 ( );

}

void line2 (void) (3 ) function definition ذقش٠ف اذاح

{ for (int j=0; j<=40; j++)

cout <<" * ";

cout << endl;

}

ذف١ز اثشاط

Page 57: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 57

Type of Function اىاع الذوال

ؿ اذاح ذقرذ ف ام١ح ار ذق١ذا اذاح

void main ( )

اؼذ ااؿ اذاي ان ااؿ اخش اذاي ضؽا ف١ا ٠ void ا وح

داي ذق١ذ ل١ح طؽ١ؽح (int function)

داي ذق١ذ ل١ح ؼم١م١ح (float function)

داي ذق١ذ عغح ؼشف١ح (string function)

داي ذق١ذ ل١ح ؼشف١ح (char function)

داي لاذق١ذ ل١ح (void function)

داي ذق١ذ ل١ح ؿ structure ذغ struct function

استذػبء الذالت

تذ ( ) lineذى تذ قالاخ وا ف اذاح . ٠ر اعرذفاء اذاح اا تقالاخ ا تذ قالاخ

. قالاخ قا فذ وراتح ل١ ت١ الاط اذاح

. ( ) line2اثشاط اظد ٠ضػ اعرذفاء اذاح تقالاخ ره تقذ ذقذ٠ اذاح

EX:-

int sum (int a , int b)

O/P I/P

) (ؿ اذاح) اع اذاح ٠قرذ ف اؽ١فح ار ذؤد٠ا) (قالاخ اذاح)

# include <iosteream.h>

void line2 (int no);

void main ( )

{

line2 (30);

cout <<" computer Dep";

line2 (50);

}

void line2 (int no)

{ for (int i=0 ; i<=no ; i++)

cout << "*";

cout << endl;

}

Page 58: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 58

Example: - لحسبة هجوىع ػذديي

# include <iosteream.h>

int sum (int a , int b)

void main ( )

{ int Z, x=10, y=40;

Z = sum (x,y);

cout << Z;

}

int sum (int a , int b)

{ int s

s = a + b;

return s;

}

ام١ح ار ذق١ذا اذاح ا اثشاط فارا واد ام١ح ا ذق١ذا اذاح :-هلاحظت

int وا ؿ اذاح int ارا واد fhoat . اا ف ؼاحvoid فلا ذغرخذ وح

return لاا لا ذق١ذ ا ل١ح .

Example: - int اذاح ؿ

#

int sqr (int);

int qup (int);

void main ( )

{ int s, qu, no=5;

s = sqr (no);

qu = qup (no);

cout << "The square no. =" << s;

cout << "\n the quq. no. =" << qu;

}

int sqr (int a)

{

return (a*a);

}

int qup (int qa)

{

return (q*q*q);

}

Page 59: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 59

Example: - float اذاح ؿ

# include <iosteream.h>

float ava (float x, float y);

void main ( )

{

float no1, no2, av;

cout <<"Enter no1 = ";

cin >> no1;

cout <<"Enter no2 = ";

cin >> no2;

av = ava (no1 , no2);

cout <<"The average =" << av;

}

float ava (float x, float y)

{

float z

z = (x + y)/2.0;

return z;

}

Example: - write program that compute the max of two number by using the

max ( ). The prototype of max ( ) is int max (int a, int b);

The function max ( ) return the maximum of a and b;

#

int max (int , int);

void main ( )

{ int x , y;

cout << " Enter the first no. = second no. =";

cin >> x >> y;

cout <<"the max no. is =" << max (x , y);

}

int max (int a, int b)

{ if (a > b)

return a;

else

return b;

}

Page 60: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 60

Example2: - write program that calculates the area of circle by using the

function carea ( ). The return the area of circle of radus r. the prototype of e

area ( ) is float carea

# include <iosteream.h>

float carea (float r);

void main ( )

{

float rad;

cout <<" Enter the radus of circule =";

cin >> rad;

cout <<" The area of circule is "<< carea(rad);

}

float carea (float r)

{ float a;

a = (r * r * 3.145);

return a;

}

Example3: - write program to find the dashed area by using function carea

( ).

# include <iosteream.h>

float carea (float);

void main ( )

{

float r1 , r2 , dsa;

cout <<" Enter the radus of circules r1,r2 =";

cin >> r1 >> r2;

dsa = carea (r2) - carea (r1);

cout <<" The dashed area =" << dsa;

}

float carea (float r)

{ float a;

a = (r * r * 3.145);

return a;

}

Page 61: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 61

Example4: - write program that calculates the distance between two

points. Each point represents by calculated by using function distance ( ).

The prototype of the function is int distance (int x1, int y1, intx2, int y2);

# include <iosteream.h>

# include <math.h>

int distance (int x1, int y1, intx2, int y2);

void main ( )

{ int x 1, y1, x2, y2;

cout <<" Enter the value of x1, y1, x2 and y2 =";

cin >> x1 >> y1 >> x2 >> y2;

cout <<" The distance =" << distance (x1, y1, x2, y2);

}

int distance (int x1, int y1, intx2, int y2);

{ int dx, dy;

dx = x2 – x1;

dy = y2 – y1;

return sqrt (dx * dx + dy * dy);

}

Example5: - write program to computer the max of n number by using

function nmax ( ). The prototype of n max ( ) is int nmax (int n); the

function return the maximum of n number where the number are entered

with n function.

# include <iosteream.h>

int nmax (int n);

void main ( )

{ int num;

cout <<" Enter the number of numbers =";

cin >> num;

cout <<" The max.no. =" << nmax (num);

}

int nmax (int n)

{ int x, max = -1000;

for (int = 0; i < n; i++)

{ cout <<" Enter new no. =";

cin >> x;

if (x > max)

max = x;

}

return max;

}

(x1,y1)

(x2,y2)

Page 62: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 62

Example6: - write program to find the binary of any positive integer

number by using function binary ( ), the prototype of binary ( ) is

int binary (int x);

# include <iosteream.h>

int binary (int x);

void main ( )

{ int num;

cout <<" Enter your number =";

cin >> num;

cout <<" The binary =" << binary (num);

}

int binary (int a);

{ if (a < 0)

return o;

int b = 0, w = 1, d;

while (a)

{ d = a % 2;

b = b + d * w;

w = w * 10;

a = a / 2;

}

return b;

}

Example7: - write program that calculates the average of n number by

using function average ( ). The prototype of average ( ) is.

float average (int n);

# include <iosteream.h>

float average (int n);

void main ( )

{ int num;

cout <<" Enter the number of numbers =";

cin >> num;

cout <<" The average =" << average (num);

}

float average (int n);

{ float x, sum = 0;

for (int i=0; i<n; i++)

{ cout <<" Enter new number = ";

cin >> x;

sum = sum + x;

}

return (sum / n);

}

Page 63: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 63

Example8: - By using overloaded function, write a program to find area of

square and rectangular. # include <iosteream.h>

float area (int);

float area (int, int);

void main ( )

{ int x, x1, x2;

cout <<" Enter the side of square =";

cin >> x;

cout <<" Enter the length and width of recargle =";

cin >> x1 >> x2;

cout <<" The area of square " << area (x) << endl;

cout <<" The area of rectangular =" << area (x1, x2);

}

float area (int l)

{

return l * l;

}

float area (int l, int w)

{

return l * w;

}

Example9: - write program to test the number (+, 0, -) # include <iosteream.h>

int lest (int);

void main ( )

{ int num;

cout <<" Enter your integer numbers =";

cin >> num;

if (test (num) == 1)

cout <<" the no. is positive ";

else if (test (num) == 0)

cout <<" the number is zero ";

else

cout <<" the number is negative ";

}

int test (int a)

{ if (a > 0)

return 1;

else if (a < 0)

return -1;

else

return 0;

}

Page 64: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 64

Example10:- write program that transform a small letter into capital letter

by using tocapital ( ). The prototype is char tocapital (char ch);

# include <iosteream.h>

char to capital (char);

void main ( )

{ char c;

cout <<" Enter your character =";

cin >> c;

cout <<" The capital =" << tocapital (c);

}

char tocapital (char ch)

{

if (ch >= 'a' && ch <= 'z')

return (ch - 32);

else

return ch;

}

AscII character

48 – 57 0 - 9

65 - 90 A - Z

97 - 122 a - z

A , a 32 : Noteفشق ت١

A = a –32

Z = z -32

Example11:- write program to test the character if it is small letter or not

by using issmall ( ). The prototype is int issmall (char c);

# include <iosteream.h>

int issmall (char c);

void main ( )

{

char ch;

cout <<" Enter the character =";

cin >> ch;

if (issmall (ch))

cout <<" The character is small " << endl;

else

cout <<" The character is not small ";

}

int issmall (char c)

{

if (c >= 'a' && c <= 'z')

return 1;

else

return 0;

}

Page 65: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 65

Example12:- write program to test the character if it is numeric digit or not

by using is ndigit ( );

# include <iosteream.h>

int isndigit (char c);

void main ( )

{

char ch;

cout <<" Enter the character =";

cin >> ch;

if (isndigit (ch))

cout <<" The character is numeric digit. " << endl;

else

cout <<" The character is non numeric digit ";

}

int isndigit (char c);

{

if (c >= 'o' && c <= 'g')

return 1;

else

return 0;

}

Example13:- delete a space character from a string by using Del-cher

function

# include <iosteream.h>

void Delchar (char s[ ], char);

void main ( )

{ char a [30];

cout <<" Enter your string ";

cin >> a;

Delchar (a [ ], ' ');

cout << a << endl;

}

void Delchar (char s [ ], char c).

{

for (int i=0, s [i], i++)

if (s [i] == c)

for (int j=i; s[j]; j++)

s[j] = s [j+1];

}

Page 66: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 66

Example14:- To replace any char. With other by function

void replace (char s[ ], char, char).

# include <iosteream.h>

void Delchar (char s[ ], char a, char b)

{ for (int i=0; s[i]; i++)

if (a == s[i])

s[i] = b;

}

void main ( )

{ char n [20];

cout <<" Enter your string =";

cin >> n;

replace (n[ ], ' ', ' * ')

cout << n << endl;

}

Q: - An integer is said to be prime if it is divisible only by 1 and itself. Write

a function that determines if a number is prime; and use this function in a

program that determines and prints all the prime number between 10 and 50.

int prime (inta);

if a is prime, the the function retuns1, else it returns 0.

# include <iosteream.h>

int prime (int a);

void main ( )

{

for (int i=1; i<50; i++)

{

if (prime (i))

cout << i <<" prime " << endl;

}

}

int prime (int a)

{

for (int j=2; j<a; j++)

if ((a % j) ==0)

return 0,

else

return 1;

}

Page 67: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 67

Call by Reference الوتغير الورجؼي

ا اغا٠ح اذح ذغ١ش ل١ح . تقذ ؿ اث١ااخ ف اع١غح & اظ ا ش٠ش تاشظـ ٠عة ضـ

. ارغ١ش اشع ا١ا

float & incp;

# include <iosteream.h>

void doubleIt (num);

void main ( )

{ int num;

cout <<" Enter number =";

cin >> num;

doubleIt (num);

cout <<" The number doubled =" << num;

}

void doubleIt (int x)

{

x* = 2;

}

void doubleIt (int &);

void main ( )

{ int num; استخذام الورجغ

cin >> num;

doubleIt (num);

cout << num;

}

void doubleIt (int & x)

{

x* = 2;

}

argumen

t Reference value

Data type

Page 68: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 68

Example: the following example enter a number of type float ,and then separate

this number into an integer and fractional part. The example show asimple variable

passed by reference.

#include <iostream.h>

void intfrac (float,float &,float &);

void main()

{ float number, intpart,fracpart;

cout<<”enter a real number”;

cin>>number;

intfrac (number,intpart,fracpart); //call to function .

cout <<”integer part is “<<intpart;

<<”fraction part is”<<fracpart

}

Void intfrac(float n,float &intp,float&fracp)

{

intp=float (long(n));

fracp=n-intp;

}

.ا ق ف فظ ارغ١شاخ تذ ذقش٠ف ف رغ١شاخ ظذ٠ذج

H.W:

Order two argument passed by refrence using function void order (int &,int &);

Page 69: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 69

pointers هؤشراث الؼبويي

تقا ىا ف (٠خض ت) ؿ ااؿ اث١ااخ ٠قشف تأ رغ١ش ٠ؽرفؼ (pointer)اؤشش

. ازاوشج

اق ا و ىا ف ازاوشج فا اعاص ٠رقا ـ زا اىا تاقا اؽذد ؽ تغش٠مح

2ؼع (ram)قا اؼعض ىا ف ازاوشج int a=0غ١ش ثاششج رقا ـ زا اقا فصلا زا الافلا

. 0 ضـ ف١ ام١ح a اظق اع (intؼع )تا٠د

. فؽ رقا ـ ام١ح اخضح ف١ ١ظ اقا اخظض ز ام١ح aتارا وا ذقاا ـ ارغ١ش

. (pointer)زا ف الافلا اقاد فارا ف الافلا ف اؤشش

: pointerالاػلاى ػي الوؤشر

٠ر الافلا ف ؤشش ا ا رغ١ش ااؿ اث١ااخ تفظ اغش٠مح ار ق تا ف اث١ااخ اقاد٠ح

ذؽذ٠ذ ؿ اث١ااخ ش اع ارغ١ش ى افشق ت١ الافلا ف ارغ١ش الافلا ف اؤشش ا اع ارغ١ش

فصلا الافلا ف .ذعق ارغ١ش ؤشش * ١ذي ف ا ؤشش ا ا اقلاح * ٠عة ا ٠غثك تاقلاح

;int *p ؤشش ؿ طؽ١ػ ىرة اظسج ارا١ح

تا٠د ـ الاؼرفاػ تقا زا اىا 2 اطثػ ؤشش ا غاؼح ف ازاوشج مذاسا pزا ٠ق ا ارغ١ش

pف ارغ١ش

وا اسدا ا رقا ـ ز ام١ح ذقاا ف عش٠ك اقا ا تذلا ا رقا ؽ ـ ام١ح رشن

. اعاص ٠رقا ـ اقا تزا الاعب

pointerهزايب استخذام الوؤشراث

٠ؽمك اعرقاي اؤششاخ فائذ وص١شج ا

افادج اوصش ل١ح اذاح -1

ارقا ـ اظففاخ اؽشف١اخ ذش٠شا ا اذاي تشى افض -2

ارشاس ااؿ اوصش لج اث١ااخ -3

ارقا ـ اعاص ىاذح فا٠ ذاخ خاسض اعاص -4

#include<iostream.h>

void rets(int*x,int*y);

void main()

{

int*x=5, *y=10;

rets(&x,&y);

cout<<”x=”<<x<<”y=”<<y;

}

void rets (int *x,int*y)

{

*x+=5;

*y+=10;

}

Page 70: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 70

ا ل١ح (pointer) افلا ف داح ا قالاخ زا ا اقالاخ ؿ ؤشش 2ف اغغش سل

ل١ق ا اقالاخ ؿ ؤششاخ اا ف ؼاح اعرذفاء اذاح شع ا اذاح , طؽ١ؽح

ؼ١س ذ اسعاي فا٠ ارغ١شاخ 6زا اذ ف اغغش سل ,فا٠ ز ام١ى شع ا اذاح

x,y ره تاظسج &x,&y ـ ارغ١ش٠عق ارغ١ش ٠ش١ش ا فا اىا & فظد اقلاح

()rets ا اذاح ١x,yظ ام١ح اخضح ف ارغ١ش فف زا اغغش ٠ر اسعاي فا٠ ارغ١ش٠

ذم اذاح تض٠ادج ام١ اظدج ف x,yار ذم تاعرمثاي اقا٠ ارق٠ض تا ف ارغ١ش٠

ز اقا٠ تارا ذى ر١عح زا اثشاط عثافح ام١ تقذ ص٠ادج ام١ح اخضح ف ارغ١ش

تزا الاعب وأا افادا ل١١ر١ اذاح

افائذج اىا١ح اشاس داح ذم تق١اخ وص١شج ذخشض اوصش اذط اا تذ اعرقاي اؤششاخ

. returnفلا غرغ١ـ ا ق١ذ ز ام١ ا اذاح اشئ١غ١ح لاه لاذغغ١ـ اعرقاي اوصش ظح

٠م اثشاط تاخز سل ٠ؽر ف فذد طؽ١ػ ظضء فشش ٠م تفظ اعضء اؽم١م ف

اظؽ١ػ

#include <iostream.h>

void intfrac (float,float *,float *);

void main()

{

float n,intepart,fracpart;

cout<<”enter number=”;

cin>>n;

intfra(n,&intepart,&fracpart);

cout<<”intepart is=”<<intepart;

cout<<”ln fracpart is=”<<fracpart;

}

void intfrac(float n,float * intepart,float*fracpart)

{

*intepart=float(long(n));

*fracpart=n-*intepart;

}

Page 71: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 71

Example:

#include<iostream.h>

void pscale(int*,int*,int);

void main()

{

int x,y.z;

cin>>x>>y>>z;

pscale(&x,&y,z);

cout<<”x=”<<x<<”y=”<<y<<”z=”<<z;

}

void pscale(int*x,int*y,int z)

{

*x=*x*z;

*y=*y*z;

}

Example:

#include<iostream.h>

void swap(int*,int*);

void main()

{

int x,y;

cout<<”enter value of x&y=”;

swap(&x,&y);

cout<<x<<y;

}

void swap (int*a,int*p)

{

int p;

p=*a;

*a=*b;

*b=p;

}

Page 72: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 72

Pointers in array

int x=10;

int*a;

cout<<x; //10

cout<<&x; //2000

a=&x; لـ

cout<<a; //2000

cout<<*a; //10

const int A=100;

int x[5]={11,22,33,44,55};

cout<<x<<endl; //2000

cout<<*x<<endl; //11

cout<<*(x+1); //22

cout<<*(x+2); // 33

(x+n)

*(x+n)=x[n]

Example:

Write aprogram to calculate the sum of an array by using pointer

void main()

{ int x[10]={};

int sum=0;

for(int i=0;i<10;i++)

sum+=*(x+i);

cout<<sum;

}

OR

for(int*p=x;p<(x+10);p++)

sum+=*p;

cout<<sum;

X+(n*size of x)

2000+(1*2)

2002

x[i]

note;

the name of an array is a contant pointers which points to the first element of it.

اع اظففح فثاسج ف ؤشش شاتد از ٠ش١ش ا اي لـ ف اظففح

Page 73: OBJECT ORIENTED PROGRAM WITH C++

OBJECT ORIENTED PROGRAM With C++

Assis. Lect. Aymen Dawood Salman Page 73

H.W: 1.Write a program that converts the time from seconds into hours, minutes and

seconds using function time( ).

void time (int sec, int*h, int*m, int*s) 2. Write a program to compute the number of decimal digits, that a positive integer

number has using function: void nodec(int *a)

3. Write a program that swap two number pass by pointer using function.

void swap (int* , int*)

4. Write the implementation of addstring ( ) function which is used to concatenate

two string: str1 and str2. the concatenated string is returned by str1.

void addstring (char *str1, char *str2)

5. Write a function to insert an integer number into an array in a specified position by using:

void insert(int*a, int position, int item)

6. Write a program to compute the division of two complex number using function

division ( ).

complex division (complex c1, complex c2)

7. Write a program to compute the product of two complex number using function

product( ). Using strcture complex.

complex product (complex c1, complex c2)

8. Write a program to compute the SUM of two TIME using function sumtime( )

time product (time t1, time t2). Using strcture time.

let h=60min, 1min=60sec

9. Write a program to compute the SUM of two distance using function

sumdistance( ). Using strcture distance.

distance sumdistance (distance d1, distance d2)

let 1 feet =12 inch.