CPS120: Introduction to
Computer Science
Variables and Constants
Anatomy of a C++ Program
//Simple C++ Program
// Purpose: To demonstrate the
// parts of a simple C++ program
#include <iostream.h>
main ( )
cout << "This is a program ";
return 0;
Comments //
Compiler Directive #
Main Function ( )
Braces { }
Statements ;
Used to store values in virtually every
computer program
Used for “remembering” things during
program execution
Variables have names, types and values
• Values can change during execution
Languages and Data Types
Strong typing: the requirement that only a
value of the proper type can be stored into a
A data type is a description of the set of
values and the basic set of operations that
can be applied to values of the type
Data Types
Integer numbers
Real numbers
Boolean values
A declaration is a statement that associates
an identifier with a variable, an action, or
some other entity within the language that
can be given a name so that the programmer
can refer to that item by name
Declarations in Various Languages
Data Types
You need to first choose an appropriate data
type when you use a variable.Values can
either be:
whole numbers
decimal numbers
letters (i.e. characters)
whole words (i.e. string values
Choosing a Type
Most computer languages have a select
number of different data types
You must select the proper data type for
each variable that you use in a program in
order to program efficiently
This decreases memory (RAM) usage
This increases the speed of your program
The range varies depending upon how many
bytes are assigned to represent an integer
Some high-level languages provide several
integer types of different sizes
Operations that can be applied to integers
are the standard arithmetic and relational
Data Types - Whole Numbers
In C++, to store whole numbers in a
variable, we use a variable of the int data
An int variable uses 4 bytes of memory.
An int variable can store a number as low as
An int variable can store a number as high as
Other Data Types
unsigned char, short, unsigned int, long,
and unsigned long for whole numbers
Real Numbers
Like the integer data type, the range varies
depending on the number of bytes assigned
to represent a real number
Many high-level languages have two sizes
of real numbers
The operations that can be applied to real
numbers are the same as those that can be
applied to integer numbers
Data Types - Decimal Numbers
To store decimal numbers in a variable, we
use a variable of the double data type
A double variable uses 8 bytes of memory
A double variable can store a number as low as
-1.7 x 10308
A double variable can store a number as high
as 1.7 x 10308
A double variable can store a number with up
to 15 digits of precision (significant digits)
Other Data Types
float and long double for decimal values
It takes one byte to represent characters in
the ASCII character set
Two bytes to represent characters in the
Unicode character set
Our English alphabet is represented in
ASCII, which is a subset of Unicode
Applying arithmetic operations to characters
doesn’t make much sense
Comparing characters does make sense, so the
relational operators can be applied to characters
The meaning of “less than” and “greater than”
when applied to characters is “comes before” and
“comes after” in the character set
Data Types - Characters
To store a letter or a single character (such
as #, $, *, etc.), we use a variable of the
char data type.
A char variable only uses 1 byte of memory.
A char variable can only hold one letter, digit,
or character.
A string is a sequence of characters considered as
one data value
For example: “This is a string.”
Containing 17 characters: one uppercase letter, 12
lowercase letters, three blanks, and a period
The operations defined on strings vary from
language to language
They include concatenation of strings and comparison
of strings in terms of lexicographic order
Data Types – Words / Phrases
To store a word or phrase (string value), we
use a variable that is a string
Technically string is not a data type
You can think of it as a data type for now
The Boolean data type consists of two
values: true and false
Not all high-level languages support the
Boolean data type
If a language does not, then you can
simulate Boolean values by saying that the
Boolean value true is represented by 1 and
false is represented by 0
Data Types – True and False
The data type bool is useful to store true
and false values
Alternatively, we can simply use an int
variable with either a 1 value (to represent
true) or a 0 value (to represent false) if
Using Variables in C++
Variables must be declared before they are used
in C++. Get into the habit of doing this at the top
of your functions
char grade;
// a students semester grade
int numStudents; // number of students in our class
double price;
// price of item
string userName; // user's name
A reserved word is a word in a language
that has special meaning
Case-sensitive means that uppercase and
lowercase letters are not considered the
Remember, C++ is completely case
Variable Names in C++
Variable names are technically known as
Choose your own variable names but you must be
careful to use valid ones. Otherwise, the compiler
will be confused and errors will result. When
choosing your variable names:
do not use keywords that are defined in the
programming language (Reserved Words)
do not include spaces or other disallowed characters
do not use more than 31 characters
do begin the identifier with a letter
Conventions for Naming Variables
Use a conventional method of making your
variables easy to read at a quick glance. For
Begin variable identifiers with lowercase letters (eg.
if you wish to use more than one word within the identifier,
you must capitalize the following words or parts of words
(eg. semesterGrade, testScore)
Separate successive words with underscore characters
( _ ) (eg. semester_grade, card_value)
Hungarian notation
Begin with type (eg. iTestScore)
Common Reserved Words
Initializing Variables
C++ does not automatically initialize all variables
to the value 0
If you do not initialize a variable to a certain
value, the variable will have an indeterminate
value that can corrupt the logic of your program
You should usually initialize your variables at the same
time that you declare them. This is done with a
declaration statement that is also an initialization
int numberOfPizzas = 3;
double monthlyCarPayment = 685;
char letterGrade = 'A';
string firstName = "Paul";
Assignment statement
Assignment statement: an action statement
(not a declaration) that says to evaluate the
expression on the right-hand side of the
symbol and store that value into the place
named on the left-hand side
Sample Assignment Statements
Named constant: A location in memory,
referenced by an identifier, that contains a
data value that cannot be changed
Sometimes you need to use the same value
many times throughout a program. In this
case, it is proper to use a constant rather
than a variable
Constants allow you to give a name to a
value used several times in a program
The value never changes
Use of Constants (Literals)
Strings (a sequence of symbols)
"I will be an better person "
Naming Constants
Constants are defined in a way that is
similar to variables
Select a data type and give the constant a name
Any valid identifier name can be used to
name a constant
do start with letter or underscore
don’t use reserved words
Conventions for Naming Constants
Traditionally, all uppercase letters have been used
when naming constants
Use the underscore character ( _ ) between
consecutive words. This allows other
programmers to be able to "pick out" your
constants at a quick glance
const double PI = 3.14159
const double PA_SALES_TAX = 0.06
const int SPEED_OF_LIGHT = 299792458; // commas
can't be used here
Type Compatibilities
You cannot store a value of one type in a variable
of a different type – a type mismatch occurs
Promotion occurs automatically
You can typecast
Supply the name of the data type you want to use to
interpret the variable followed by the variable placed in
• C = PI * float (diameter);

CPS120: Introduction to Computer Science