computer engineering 1 st semester dr. rabie a. ramadan 3
TRANSCRIPT
![Page 1: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan 3](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/1.jpg)
Computer Engineering 1st Semester
Dr. Rabie A. Ramadan
http://rabieramadan.org
3
![Page 2: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan 3](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/2.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/3.jpg)
3
Reserved Words
![Page 4: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan 3](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/4.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/5.jpg)
5
![Page 6: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan 3](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/6.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/7.jpg)
Escape characters
7
![Page 8: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan 3](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/8.jpg)
Examples
8
![Page 9: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan 3](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/9.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/10.jpg)
10
Example
![Page 11: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan 3](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/11.jpg)
11
Practice -- what is the o/p
![Page 12: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan 3](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/12.jpg)
12
Practice -- what is the o/p
![Page 13: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan 3](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/13.jpg)
13
O/P
![Page 14: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan 3](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/14.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/15.jpg)
Example
15
![Page 16: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan 3](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/16.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/17.jpg)
Example
17
![Page 18: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan 3](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/18.jpg)
Example (cont.)
18
![Page 19: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan 3](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/19.jpg)
19
What are constants?
const PI = 3.14;
#define PI 3.14
![Page 20: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan 3](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/20.jpg)
20
Operators and Operands“Don't cut the tree that shades you.”
![Page 21: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan 3](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/21.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/22.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/23.jpg)
23
Operators
![Page 24: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan 3](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/24.jpg)
24
Operators
Conditional operator (?) :
![Page 25: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan 3](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/25.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/26.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/27.jpg)
27
Example
![Page 28: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan 3](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/28.jpg)
28
Example
![Page 29: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan 3](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/29.jpg)
29
Example
![Page 30: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan 3](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/30.jpg)
30
Control Statement
![Page 31: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan 3](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/31.jpg)
31
Flow of the Control
![Page 32: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan 3](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/32.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/33.jpg)
33
Branching Statement
![Page 34: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan 3](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/34.jpg)
34
Example
![Page 35: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan 3](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/35.jpg)
35
Nesting Branch
![Page 36: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan 3](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/36.jpg)
36
![Page 37: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan 3](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/37.jpg)
37
Switch Statement
![Page 38: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan 3](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/38.jpg)
38
Switch Statement
![Page 39: Computer Engineering 1 st Semester Dr. Rabie A. Ramadan 3](https://reader036.vdocuments.mx/reader036/viewer/2022070402/56649f265503460f94c3cff7/html5/thumbnails/39.jpg)
39
Reading Materials
Chapters 1, 2 and 3, 5 (till 5.3).