You are on page 1of 24

Data Types, Identifiers, and Expressions

Topics to cover here:

Data types
 Variables and Identifiers
 Arithmetic and Logical Expressions

Programming Fundamental Slides 1


Data Types

 A data type provides a method of


modeling or representing a particular set
of values and determines what operations
can be performed on those values.

Programming Fundamental Slides 2


Programming Fundamental Slides 3
Data Types in The Algorithmic Language
String values (e.g. “ABC” , “computer”, “960”)
NOTE: In C++ language, some of the operations have
different symbols.

Programming Fundamental Slides 4


Identifiers, Locations, and Variables
Memory: It is a part of the computer
that has many locations (of fixed size)
used to store values (data) and
instructions.

Programming Fundamental Slides 5


Identifiers, Locations, and Variables.. cont.
Identifiers (Names):
- Use meaningful identifiers (names) to represent
data in your program.
- Identifiers are used to refer to memory locations to
store data in them or retrieve data from them.
 The rule of defining an identifier:
(1) It may contain
letters (A .. Z , a .. z ) ,
digits (0, 1, 2, …, 9), and
underscore ( _ ).
(2) It should begin with a letter.

Programming Fundamental Slides 6


Identifiers, Locations, and Variables.. cont.

NOTES:
 Some programming languages are case
sensitive. That is the uppercase identifiers are
different than lowercase identifiers (as in C++).

 Inprogramming languages, some words cannot


be used as identifiers in your program. Such
words are called reserved words (or keywords)
that have special use.

Programming Fundamental Slides 7


Reserved words (or keywords) in c++

 main
 if
 else
 while
 do
 for
Identifiers, Locations, and Variables.. cont.
 Examples of valid identifiers:
area , length, X , Y1, abc, d3, st_number
{ these all begin with a letter }

 Examples of invalid identifiers:


2Y { begins with a digit }
Ali’s { contains the symbol ‘ }
st-age { the symbol - is not underscore }
while { it is a keyword }
ab cd { it has a space }

Programming Fundamental Slides 9


Identifiers, Location, and Variables.. cont.
 Variables:
-The name of the location is the variable name.
-The location content is the value of the variable
- You can change the content of the variable at any
time in the statements of the algorithm.
e.g.
Name of the location Inside Memory location
employee_name “Ali Ahmed”
age 35
hourly_rate 3.25

Programming Fundamental Slides 10


Identifiers, Location, and Variables.. cont.
 Constants:

- You can use a constant identifier in your


algorithm to indicate a constant data.
- You CANNOT change the content of the
constant identifier.
- Use the keyword CONST to indicate a constant
identifier.
e.g.
CONST pi = 3.14
Here, pi is a constant identifier that cannot be changed
Programming Fundamental Slides 11
Expressions
 Arithmetic Expression:
- It is composed of operands and arithmetic operations
- Arithmetic operations:

- Operands may be numbers and/or identifiers that have


numeric values
- Its result is a numeric value
EX : 3 + 4 gives 7
EX: T MOD 2 gives 0 if T is any even number, and
1 if T is any odd number
12
Expressions .. cont.
 Logical Expression:
- It is called also Boolean expression.
- It is composed from operands and operators.
- Operands are identifiers that have logical values
- Its result is a logical value (true or false) (see later).
- Operators are logical:

EX:
where A, B are defined logical

Note: In C++, there is no specific data type to represent “true”


and “false”. C uses value “0” to represent “false”, and uses
non-zero value to stand for “true”.
13
Expressions .. cont.
 Relational Expression:
- It is composed from operands and operators.
- Operands may be numbers and/or identifiers
that have numeric values
- Its result is a logical value (true or false).
- Operators are relational operators:

EX:

14
Expressions .. cont.

 NOTES
1) A relational expression may contain arithmetic
sub-expressions,
e.g. ( 3 + 7 ) < (12 * 4 )
2) A logical expression may contain relational
and arithmetic sub-expressions,
e.g.
1- x AND y AND ( a > b )
2- (2 + t ) < (6 * w ) AND ( p = q )

Programming Fundamental Slides 15


Operator Precedence

 Expressions are evaluated according to the


precedence rule.

 Precedence Rule:
- Each operator has its own precedence that
indicates the order of evaluation.
- If the expression has operators of the same
precedence, then the evaluation starts from
left of expression to the right.

Programming Fundamental Slides 16


.Operator Precedence .. cont
Precedence Description Operator In Operator In
C++ pseudo code

Higher parentheses ( (
! not
*, /, % *, /, MOD

Binary plus, binary minus +, - +, -

<, <=, >, >= <, , ≤, >, ≥

Equal, not equal == , != =,≠

&& AND

|| OR

Lower Assignment = 

Programming Fundamental Slides 17


Examples

 Find the value of the following expression:


(1) 5 + 8 * 2 / 4

16

9 (This is the final result)


Programming Fundamental Slides 18
Examples .. cont.
(2) (9 + 3) - 6 / 2 + 5

12

14 (this is the final result)

Programming Fundamental Slides 19


Evaluating Logical Expressions

 The truth table


(1) AND table

AND True False


True True False
False False False

Programming Fundamental Slides 20


Evaluating Logical Expressions.. cont.

(2) OR table
OR True False
True True True
False True False

(3) NOT table


NOT True False
False True

Programming Fundamental Slides 21


Examples on Logical Expressions

(1) If x = True, y = False, z = False, find the


value of the expression x AND y OR z

x AND y OR z

False

False (the final result)

Programming Fundamental Slides 22


.Examples on Logical Expressions .. cont

(2) If a = 3, b = 5, x = true, y = false, find the value


of the expression: ( a < b ) AND y OR x

( a < b ) AND y OR x

True

False

True (the final result)

Programming Fundamental Slides 23


Short circuiting:
 Short circuiting means that we don't
evaluate the second part of an AND or
OR unless we really need to.

Programming Fundamental Slides 24

You might also like