computer engineering 1 st semester dr. rabie a. ramadan 3

39
Computer Engineering 1 st Semester Dr. Rabie A. Ramadan http://rabieramadan.org 3

Upload: daisy-foster

Post on 05-Jan-2016

215 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

Computer Engineering 1st Semester

Dr. Rabie A. Ramadan

http://rabieramadan.org

3

Page 2: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

2

C++ Names

The name of a variable could: • Starts with an underscore “_” or a letter, lowercase or uppercase, e.g.

_Students, pRice

• Can include letters, underscore, or digits. Examples are: keyboard, total_grade, _Score_Side1

• Cannot include special characters such as !, %, ], or $

• Cannot include an empty space

• Cannot be any of the reserved words

• Should not be longer than 32 characters (although allowed)

Page 3: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

3

Reserved Words

Page 4: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

4

Variables and Their Data Types

The amount of memory space necessary to store a variable is also referred to as a data type.

Page 5: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

5

Page 6: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

6

Variables and Their Data Types

char 8 bits

Signed char:• -128 +127

Unsigned char • 0 255

Escape sequences are characters

Page 7: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

Escape characters

7

Page 8: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

Examples

8

Page 9: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

9

Variables and Their Data Types Integers – 32 bits or 4 bytes

• Holds numerical data

• Signed or Unsigned

Short integers • 16 bits or 2 bytes

• Signed or Unsigned

Long integers• To enforce positive numbers

• 32 bit long

Page 10: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

10

Example

Page 11: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

11

Practice -- what is the o/p

Page 12: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

12

Practice -- what is the o/p

Page 13: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

13

O/P

Page 14: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

14

Variables and Their Data Types

Floating points

• Real numbers ex. 5.5

• 4 bytes

• Declared as : float x;

Floating number with double precision

• 8 bytes

• Declared as : double x;

Larger storage

• 10 bytes

• Declared as: long double x;

Page 15: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

Example

15

Page 16: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

16

Variables and Their Data Types

String

• Group of characters

• No limit

• Declared as: string name;

getline() function

• Takes the data from external source and save it into a string variable

• Ex. getline(cin, name);

• cin is to notify the compiler that the data is coming from external source

• Ex. getline( cin, name, ‘?’) getline( cin, stringName, delimiter )

• Saves the data when the delimiter is entered

Page 17: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

Example

17

Page 18: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

Example (cont.)

18

Page 19: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

19

What are constants?

const PI = 3.14;

#define PI 3.14

Page 20: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

20

Operators and Operands“Don't cut the tree that shades you.”

Page 21: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

21

Operators Arithmetic :

• Unary Operators sign (+ or -)

• Algebraic operators

• + Addition

• - Subtraction

• * Multiplication

• / Division

• % Reminder

• ++ Increment

• -- Decrement

• += Add to the current content

• -= subtract from the current content

• *= , /= , ..

Page 22: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

22

Operators

Logical operators • o/p true or false

• ! NOT

• && AND

• || OR

• > greater than

• < less than

• >= greater than

• <= less than

• == equal

Page 23: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

23

Operators

Page 24: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

24

Operators

Conditional operator (?) :

Page 25: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

25

Operators

Explicit type casting operator • Converts a datum of a given type to another.

Page 26: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

26

Operator Precedence

Operator classification Operators

parentheses ( )

postfix operators [] x++ x--

unary operators ++x --x +x -x !

creation or cast new (type)x

multiplicative * / %

additive + -

relational < > >= <=

equality (boolean) = = !=

logical AND &&

logical OR ||

assignment =

Page 27: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

27

Example

Page 28: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

28

Example

Page 29: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

29

Example

Page 30: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

30

Control Statement

Page 31: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

31

Flow of the Control

Page 32: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

32

Control Statements

Ways for a programmer to control what pieces of the program are to be executed at certain times.

branching statements and loops.

Page 33: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

33

Branching Statement

Page 34: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

34

Example

Page 35: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

35

Nesting Branch

Page 36: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

36

Page 37: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

37

Switch Statement

Page 38: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

38

Switch Statement

Page 39: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan  3

39

Reading Materials

Chapters 1, 2 and 3, 5 (till 5.3).