By: Engr. M.C. Sicat
By: Engr. M.C. Sicat
Sicat
Objectives
Introduction to C++
Programming Style
Data Types
Arithmetic Operations
Variables and Declaration Statements
2
Objectives (continued)
Applying the Software Development Procedure
Applications
Common Programming Errors
3
Introduction to C++
Modular Program: a program consisting of
interrelated segments arranged in a logical and
understandable form
Easier to develop, correct, and modify than other
kinds of programs
Module: a small segment which is designed to
perform a specific task
A group of modules is used to construct a modular
program
4
Introduction to C++ (continued)
6
Introduction to C++ (continued)
8
Introduction to C++ (continued)
Rules for forming identifier names:
First character must be a letter or underscore
Only letters, digits, or underscores may follow the
initial letter (no blanks allowed)
Keywords cannot be used as identifiers
Max length of an identifier = 1024 characters
Use underscores to separate multiple words in a
name, or capitalize the first letter of each word
9
Introduction to C++ (continued)
Keyword: a reserved name that represents a
built-in object or function of the language
Keywords
10
Introduction to C++ (continued)
Examples of valid C++ identifiers:
degToRad intersect addNums
slope bessell multTwo
findMax density
11
Introduction
to C++ (continued)
Function names
Require a set of parentheses at the end
Can use mixed upper and lower case
Should be meaningful, or be a mnemonic
Mnemonic: a word designed as a memory aid
Examples of function names:
easy() c3po() r2d2() theForce()
Note that C++ is a case-sensitive language!
12
Introduction to C++:
The main() Function
Overall structure of a C++ program contains one
function named main(), called the driver function
All other functions are invoked from main()
13
Introduction to C++:
The main() Function
(continued)
15
Introduction to C++:
The main() Function
(continued)
Each statement inside the function must be
terminated with a semicolon
return: a keyword causing the appropriate value to
be returned from the function
return 0 in the main() function causes the
program to end
16
Introduction to C++:
The main() Function
(continued)
17
Introduction to C++: The cout
Object
cout object: an output object that sends data to a
standard output display device
18
Introduction to C++: The cout
Object (continued)
Preprocessor command: starts with a #; causes an
action before the source code is compiled into
machine code
#include <file name> : causes the named file to
be inserted into the source code
C++ provides a standard library with many pre-
written classes that can be included
Header files: files included at the head (top) of a C+
+ program
19
• using namespace <namespace name> :
indicates where header file is located
• Namespaces qualify a name; a function name
in your class can be the same as one used in a
standard library class
• String: any combination of letters, numbers,
and special characters enclosed in double
quotes (a delimiter)
• Delimiter: a symbol that marks the beginning
and ending of a string; not part of the string
20
Introduction to C++ : The cout
Object (continued)
21
Introduction to C++ : The cout
Object (continued)
Escape sequence: one or more characters preceded
by a backslash, \
22
Programming Style
• Although more than one C++ statement can be
on a single line, good style calls for one
statement per line
• Opening and closing braces {} for the function
body should each be on separate lines
• Statements in the function body should be
indented
23
Programming Style: Comments
Comments: explanatory remarks in the source code
added by the programmer
Line comment: begins with // and continues to the
end of the line
Line comment can be on a line by itself, or at the end
of a line of code
Line comment cannot be longer than one line
24
Programming Style: Comments
(continued)
25
Programming Style: Comments
(continued)
Block Comment: a comment that spans across two
or more lines
Block comment begins with /* and ends with */
Example:
/* This is a block comment that
spans
across three lines */
26
Data Types
• Data type: a set of values and the operations
that can be applied to these values
• Two fundamental C++ data groupings:
– Class data type (a class): created by the
programmer
– Built-in data type (primitive type): part of the
C++ compiler
27
Data Types (continued)
28
Data Types (continued)
• Literal (constant): an actual value
Examples:
3.6 //numeric literal
“Hello” //string literal
• Integer: a whole number
• C++ has 9 built-in integer data types, providing
differing amounts of storage (compiler
dependent)
29
Data Types: Integer (continued)
30
Data Types: Integer (continued)
int data type: whole numbers, optionally with + or
– sign
Example: 2
char data type: individual character; any letter,
digit, or special character enclosed in single quotes
Example: ‘A’
Character values are usually stored in ASCII code
31
Data Types: Integer (continued)
33
Data Types: Integer
(continued)
Escape sequences
34
Data Types: Integer (continued)
bool data type: represents Boolean (logical) data;
restricted to two values: true or false
sizeof operator: shows the number of bytes used to
store values of any data type
Values returned by sizeof are compiler dependent
35
Data Types: Integer (continued)
36
Data Types: Integer (continued)
Signed data type: one that permits negative,
positive, and zero values
Unsigned data type: permits only positive and zero
values
An unsigned data type provides essentially double the
range of its signed counterpart
37
Data Types: Integer (continued)
39
Data Types: Floating-Point
Types (continued)
40
Data Types: Floating-Point
Types (continued)
• float literal: append an f or F to the number
• long double literal: append an l or L to the
number
Examples:
9.234 // a double literal
9.234F // a float literal
9.234L // a long double literal
41
Data Types: Exponential
Notation
Floating point numbers can be written in exponential
notation, where e stands for exponent
42
Arithmetic Operations
• C++ supports addition, subtraction,
multiplication, division, and modulus division
• Different data types can be used in the same
arithmetic expression
• Arithmetic operators are binary operators
• Binary operators: require two operands
43
Arithmetic Operations
(continued)
Operation Operator
Addition +
Subtraction -
Multiplication *
Division /
Modulus division %
44
Arithmetic Operations
(continued)
45
Arithmetic Operations:
Expression Types
• Expression: any combination of operators and
operands that can be evaluated to yield a value
• If all operands are the same data type, the
expression is named by the data type used
(integer expression, floating-point expression,
etc.)
• Mixed-mode expression: contains integer and
floating-point operands; yields a double-
precision value
46
Arithmetic Operations:
Integer Division
• Integer division: yields an integer result
– Any fractional remainders are dropped
(truncated)
Example: 15/2 yields 7
• Modulus (remainder) operator: returns only the
remainder
Example: 9 % 4 yields 1
47
Arithmetic Operations:
Negation
• Unary operator: requires only one operand
• Negation operator (-): reverses the sign of the
number
48
Arithmetic Operations
Summary of Operators
49
Arithmetic Operations:
Operator Precedence &
Associativity
Rules for writing arithmetic expressions:
Never place two consecutive binary arithmetic
operators side by side
Use parentheses to form groupings; contents within
parentheses are evaluated first
You may nest parentheses within other parentheses;
evaluated from innermost to outermost
Use the * operator for multiplication, not parentheses
50
Arithmetic Operations:
Operator Precedence &
Associativity (continued)
Expressions with multiple operators are evaluated by
precedence of operators:
All negations occur first
Multiplication, division, and modulus are next, from
left to right
Addition and subtraction are last, from left to right
51
Arithmetic Operations:
Operator Precedence &
Associativity (continued)
• Associativity: the order in which operators of
the same precedence are evaluated
52
Variables and Declaration
Statements
• Variable: symbolic identifier for a memory
address where data can be held
• Use identifier naming rules for variable names
Figure 2.11
Naming
storage
locations.
53
Variables and Declaration
Statements (continued)
Assignment statement: used to store a value into a
variable
Value of the expression on the right side of the = is
assigned to the memory location of the variable on
the left side of the =
Examples:
num1 = 45;
num2 = 12;
total = num1 + num2;
54
Variables and Declaration
Statements (continued)
Declaration statement: specifies the data type and
identifier of a variable; sets up the memory location
Syntax: <dataType> <variableName>;
Data type is any valid C++ data type
Example: int sum;
Declarations may be used anywhere in a function;
usually grouped at the opening brace
55
Variables and Declaration
Statements (continued)
Character variables: declared using the char
keyword
Multiple variables of the same data type can be
declared in a single declaration statement
Example:
double grade1, grade2, total, average;
Variables can be initialized in a declaration
Example: double grade1 = 87.0
A variable must be declared before it is used
56
Variables and Declaration
Statements (continued)
57
Variables and Declaration
Statements (continued)
Declaring a variable causes memory to be allocated
based on the data type
59
Variables and Declaration
Statements (continued)
60
Applying the Software
Development Procedure
Step 1: Analyze the problem
Understand the desired outputs
Determine the required inputs
Step 2: Develop a solution
Determine the algorithms to be used
Use top-down approach to design
Step 3: Code the solution
Step 4: Test and correct the program
61
Applications: Radar
Step 1: Analyze the Problem
Speed Trap
Output: speed of the car
Inputs: emitted frequency and received frequency
Step 2: Develop a Solution
Algorithm:
Assign values to f0 and f1
Calculate and display speed
Step 3: Code the Solution
Step 4: Test and Correct the Program
62
Applications: Radar Speed Trap
(continued)
63
Applications:
Telephone Switching Networks
Number of lines required for a directly connected network:
65
Applications: Telephone
Switching Networks
(continued)
Step 2: Develop a Solution (continued)
Calculate total number of lines for 110 subscribers
Subtract to get additional lines needed
Display number of lines for 100 subscribers
Display number of additional lines needed
Step 3: Code the Solution
Step 4: Test and Correct the Program
66
Applications: Telephone
Switching Networks
(continued)
67
Common Programming Errors
Missing parentheses after main
Missing or incorrect braces around function body
Misspelling a reserved word
Missing ending double quotes on string literal
Missing semicolon at end of statement
68
Common Programming Errors
(continued)
Adding a semicolon at end of #include statement
Missing \n to indicate new line
Substituting letter O for zero and vice versa
Failing to declare all variables
Storing incorrect data type into a variable
69
Common Programming Errors
(continued)
Attempting to use a variable with no value
Dividing integer values incorrectly
Mixing data types in the same expression
70
Summary
C++ program contains one or more functions, one of
which must be called main()
All C++ statements must be terminated by a
semicolon
Data types include int, float, bool, char
cout object can be used to display data
cout object requires the preprocessor command
#include <iostream>
71
Summary (continued)
Variables must be declared with their data type
A variable can be used only after it has been declared
Variables may be initialized when declared
Definition statement causes computer to allocate
memory for a variable
sizeof() operator yields the amount of storage
reserved for a variable
72