ECE 151 – Introduction to
Programming
Parts of the C++ program
// sample C++ program comment
#include <iostream> preprocessor directive
using namespace std; which namespace to use
int main() beginning of function named main
{ beginning of block for main
cout << "Hello, there!"; output statement
return 0; string literal
send 0 to operating system
} end of block for main
Special Characters
Character Name Meaning
// Double slash Beginning of a comment
# Pound sign Beginning of preprocessor
directive
< > Open/close brackets Enclose filename in #include
( ) Open/close parentheses Used when naming a function
{ } Open/close brace Encloses a group of statements
" " Open/close quotation Encloses string of characters
marks
; Semicolon End of a programming statement
The cout Object
● Displays output on the computer screen
● You use the stream insertion operator << to send output to cout:
cout << "Programming is fun!";
The cout Object
● Can be used to send more than one item to cout:
cout << "Hello " << “World!";
Or:
cout << "Hello ";
cout << “World!";
The cout Object
● This produces one line of output:
cout << "Programming is ";
cout << "fun!";
Simple online program to write C++
program
Simple online program to write C++
program
Simple online program to write C++
program
Simple online program to write C++
program
Simple online program to write C++
program
Use “\t” to add space to your words
The endl Manipulator
● You can use the endl manipulator to start a new line of output. This will
produce two lines of output:
cout << "Programming is" << endl;
cout << "fun!";
The endl Manipulator
cout << "Programming is" << endl;
cout << "fun!";
Programming is
fun!
The endl Manipulator
● You do NOT put quotation marks around endl
● The last character in endl is a lowercase L, not the number 1.
endl This is a lowercase L
The \n Escape Sequence
● You can also use the \n escape sequence to start a new line of output. This
will produce two lines of output:
cout << "Programming is\n";
cout << "fun!";
Notice that the \n is INSIDE
the string.
The \n Escape Sequence
cout << "Programming is\n";
cout << "fun!";
Programming is
fun!
The cin Object
● Can be used to to store a string entered by a user
cout << “Enter Your name";
cin << First-name;
The cin Object
#include <iostream>
using namespace std;
int main()
{
string firstName;
cout << "Type your first name: \n";
cin >> firstName; // get user input from the keyboard
cout << "Your name is: " << firstName;
return 0;
}
The cin Object
The #include Directive
● Inserts the contents of another file into the program
● This is a preprocessor directive, not part of C++ language
● #include lines not seen by compiler
● Do not place a semicolon at end of #include line
Variables and Literals
● Variable: a storage location in memory
○ Has a name and a type of data it can hold
○ Must be defined before it can be used (Declaration Process)
Variables and Literals
● Variable: a storage location in memory
Another definition: variable is used to allocate memory to save data.
Feature of Variable
Type Name Value Address
• Int • 10, 20
• Float • 1.2, 9.3 Example:
• Double • 3.40 int X= 20;
• String • “Nile University” float Y= 3.3;
• Char • “N” double W= 606;
string Name= “Nile University”
char O= “B”
Variables and Literals
● Write C++ Program to print the following values:
integer A = 5000
Float B= 500.80
Double C = 54.540
String S= “C++ Programm
Variables and Literals
Type of Variable
Volume Type Reference Type
• Int Stack • Class Heap
• Byte Memory • Array Memory
• Float • Events
• Double
• Decimal
• String
• Char
Hint
Each item in C++ is called object. Each object has state
(value) and identity (address)
Variable Definition in Program 2-7
Variable Definition
Literals
● Literal: a value that is written into a program’s code.
"hello, there" (string literal)
12 (integer literal)
Integer Literal in Program 2-9
20 is an integer literal
String Literals in Program 2-9
These are string literals
Identifiers
● An identifier is a programmer-defined name for some part of a program:
variables, functions, etc.
C++ Key Words
You cannot use any of the C++ key words as an identifier. These words have
reserved meaning.
Variable Names
● A variable name should represent the purpose of the variable. For example:
itemsOrdered
The purpose of this variable is to hold the number of items ordered.
Identifier Rules
● The first character of an identifier must be an alphabetic character or and
underscore ( _ ),
● After the first character you may use alphabetic characters, numbers, or
underscore characters.
● Upper- and lowercase characters are distinct
Valid and Invalid Identifiers
IDENTIFIER VALID? REASON IF INVALID
totalSales Yes
total_Sales Yes
total.Sales No Cannot contain .
4thQtrSales No Cannot begin with digit
totalSale$ No Cannot contain $
Integer Data Types
• Integer variables can hold whole numbers such as 12,
7, and -99.
Defining Variables
● Variables of the same type can be defined
- On separate lines:
int length;
int width;
unsigned int area;
- On the same line:
int length, width;
unsigned int area;
● Variables of different types must be in different definitions
Integer Types in Program 2-10
This program has three variables: checking, miles, and
days
Integer Literals
● An integer literal is an integer value that is typed into a program’s code. For
example:
itemsOrdered = 15;
In this code, 15 is an integer literal.
Integer Literals in Program 2-10
Integer Literals
Integer Literals
● Integer literals are stored in memory as ints by default
● To store an integer constant in a long memory location, put ‘L’ at the end of the
number: 1234L
● Constants that begin with ‘0’ (zero) are base 8: 075
● Constants that begin with ‘0x’ are base 16: 0x75A
The char Data Type
● Used to hold characters or very small integer values
● Usually, 1 byte of memory
● Numeric value of character from the character set is stored in memory:
CODE: MEMORY:
char letter; letter
letter = 'C';
67
Character Literals
● Character literals must be enclosed in single quote marks.
Example:
'A'
Character Literals in Program 2-13
Character Strings
● A series of characters in consecutive memory
locations:
"Hello"
● Stored with the null terminator, \0, at the end:
● Comprised of the characters between the " "
H e l l o \0
The C++ string Class
● Special data type supports working with strings
● #include <string>
● Can define string variables in programs:
string firstName, lastName;
● Can receive values with assignment operator:
firstName = "George";
lastName = "Washington";
● Can be displayed via cout
cout << firstName << " " << lastName;
The string class in Program 2-15
Floating-Point Data Types
● The floating-point data types are:
float
double
long double
● They can hold real numbers such as:
12.45 -3.8
● Stored in a form similar to scientific notation
● All floating-point numbers are signed
Floating-Point Data Types
Floating-Point Literals
● Can be represented in
○ Fixed point (decimal) notation:
31.4159 0.0000625
○ E notation:
3.14159E1 6.25e-5
● Are double by default
● Can be forced to be float (3.14159f) or long double (0.0000625L)
Floating-Point Data Types in Program
2-16
The bool Data Type
● Represents values that are true or false
● bool variables are stored as small integers
● false is represented by 0, true by 1:
bool allDone = true;
bool finished = false;
allDone finished
1 0
The bool Data Type
● Example:
#include <iostream>
using namespace std;
int main() {
bool X = true;
bool Y = false;
cout << X << "\n";
cout << Y;
return 0;
}
allDone finished
1 0
The bool Data Type
Boolean Variables in Program 2-17
Determining the Size of a Data Type
The sizeof operator gives the size of any data type or variable:
double amount;
cout << "A double is stored in "
<< sizeof(double) << "bytes\n";
cout << "Variable amount is stored in "
<< sizeof(amount)
<< "bytes\n";
Variable Assignments and Initialization
● An assignment statement uses the = operator to store a value in a variable.
item = 12;
● This statement assigns the value 12 to the item variable.
Assignment
● The variable receiving the value must appear on the left side of the = operator.
● This will NOT work:
// ERROR!
12 = item;
Variable Initialization
● To initialize a variable means to assign it a value when it is defined:
int length = 12;
● Can initialize some or all variables:
int length = 12, width = 5, area;
Variable Initialization in Program 2-19
Scope
● The scope of a variable: the part of the program in which the variable can be
accessed
● A variable cannot be used before it is defined
Variable Out of Scope in Program 2-20
Arithmetic Operators
● Used for performing numeric calculations
● C++ has unary, binary, and ternary operators:
○ unary (1 operand) -5
○ binary (2 operands) 13 - 7
○ ternary (3 operands) exp1 ? exp2 : exp3
Binary Arithmetic Operators
SYMBOL OPERATION EXAMPLE VALUE
+ addition ans = 7 + 3; 10
- subtraction ans = 7 - 3; 4
* multiplication ans = 7 * 3; 21
/ division ans = 7 / 3; 2
% modulus ans = 7 % 3; 1
Arithmetic Operators in Program 2-21
A Closer Look at the / Operator
● / (division) operator performs integer division if both operands are integers
cout << 13 / 5; // displays 2
cout << 91 / 7; // displays 13
● If either operand is floating point, the result is floating point
cout << 13 / 5.0; // displays 2.6
cout << 91.0 / 7; // displays 13.0
A Closer Look at the % Operator
● % (modulus) operator computes the remainder resulting from integer division
cout << 13 % 5; // displays 3
● % requires integers for both operands
cout << 13 % 5.0; // error
Comments
● Used to document parts of the program
● Intended for persons reading the source code of the program:
○ Indicate the purpose of the program
○ Describe the use of variables
○ Explain complex sections of code
● Are ignored by the compiler
Single-Line Comments
Begin with // through to the end of line:
int length = 12; // length in inches
int width = 15; // width in inches
int area; // calculated area
// calculate rectangle area
area = length * width;
Multi-Line Comments
● Begin with /*, end with */
● Can span multiple lines:
/* this is a multi-line
comment
*/
● Can begin and end on the same line:
int area; /* calculated area */
Named Constants
● Named constant (constant variable): variable whose content cannot be
changed during program execution
● Used for representing constant values with descriptive names:
const double TAX_RATE = 0.0675;
const int NUM_STATES = 50;
● Often named in uppercase letters
Named Constants in Program 2-28
Programming Style
● The visual organization of the source code
● Includes the use of spaces, tabs, and blank lines
● Does not affect the syntax of the program
● Affects the readability of the source code
Programming Style
Common elements to improve readability:
● Braces { } aligned vertically
● Indentation of statements within a set of braces
● Blank lines between declaration and other statements
● Long statements wrapped over multiple lines with aligned operators
Standard and Prestandard C++
Older-style C++ programs:
○ Use .h at end of header files:
○ #include <iostream.h>
○ Use #define preprocessor directive instead of const definitions
○ Do not use using namespace convention
○ May not compile with a standard C++ compiler
#define directive in Program 2-31
Thanks