MELJUN CORTES--IT102 Introduction to C Programming Complete
-
Upload
meljun-cortes-mbampa -
Category
Documents
-
view
218 -
download
0
Transcript of MELJUN CORTES--IT102 Introduction to C Programming Complete
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
1/47
Introduction To C++ ProgrammingLanguage
by: MELJUN P. CORTES,MBA,MPA
LECTURE 3
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
2/47
What is C++
C++ is a high-levellanguage and it is evolved
from C over a period of several years starting
in 1980. The standard for C++ was jointly developed
by the American National Standards Institute(ANSI) and the International Standards
Organization (ISO).
a set of rules, symbols, and special words usedto construct a computer program.
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
3/47
Structure of a C++ Program
Figure 3.1 Structure of a C++ Program
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
4/47
A Typical C++ Program
// A typical C++ Program
# include using namespace std;
# define PI 3.142
int Integer;
int main ( ){
double radius, area;
radius = 7;
area = radius * radius * PI;
return 0;}
PreprocessorDirective
Comment
Main
function
Global Declaration
Local declaration
Statements
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
5/47
Character Set
C++ is composed of character set :
Number : 0 to 9
Alphabetical : a to z and A to Z
Spacing
Special Character :
, . : ; ? ! ( ) {} + - * / = > < # % & ^ ~ | / _
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
6/47
Token
Token : combination of the characters in C++
Categorised into:
Identifiers
Reserved words/keywords
Constants
Literal String
Punctuators
Operators
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
7/47
Identifiers
Allows programmers to name data and other objects in theprogram-variable, constant, function etc.
Can use any capitalletter A through Z, lowercase letters athrough z, digits 0 through 9 and also underscore ( _ )
Rules for identifier
The first character must be alphabetic character or underscore
It must consists only of alphabetic characters, digits andunderscores, cannot contain spaces
It cannot duplicate any reserved word
C++ is case-sensitive; this means that CASE, Case, case, andCaSe are four completely different words.
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
8/47
Valid and Invalid Identifiers
Valid names
A
student_name
_aSystemName
pi
al stdntNm
_anthrSysNm
PI
Invalid names
$sum // $ is illegal
2names // cant start with2
stdnt Nmbr // cant have space
int // reserved word
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
9/47
Reserved word/Keywords
A word that has special meaning in C++.
Keywords cannot be used to name identifiers.
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
10/47
Constant
Data values that cannot be changed during the
execution of a program
Types of constant: Literals constant
Defined constants
Declared constants
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
11/47
Literals Constant
If the data cannot be changed, we can simply codethe data value itself in a statement
Eg: discount = 0.10 ;
Categorised into:
Integer Numerals ( eg: 178, -9, 0113, 0x4b)
Floating-Point Numerals (eg: 3.14159,6.02e23,1.6e-19 ,3.0
Characters ( eg: A, p) Strings ( eg; Hello World)
Boolean (eg: true , false).
0.10 is a literal
constant
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
12/47
Defined Constant (#define)
Use the #define preprocessor directive
Format: #define identifier value
Eg : #define EPF_RATE 0.11
Placed at the beginning of the program#include using namespace std;#define EPF_RATE 3.142
int main(){
;nett = salary ( salary * EPF_RATE);;
}
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
13/47
Declared Constants
Use a type const qualifier to indicate that data cannot
be changed and to fix the contents of the memory location
Eg: const float pi = 3.1416;
Declared inside a function
#include using namespace std;#define EPF_RATE 3.142
int main(){
const double socso_rate = 0.05;nett = salary ( salary * EPF_RATE * socso_rate);;
}
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
14/47
Data Types in C++
Type defines a set of value and operations
that can be applied on those values
Set of values for each type is known as the
domain for the type
Functions also have types which is determinedby the data it returns
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
15/47
Data Types
Standard
They serves as the basic building blocks for
derived types (compl
ex structures th
at are buil
tusing the standard types
Serves as the basic building blocks for derived
types
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
16/47
Data Types
Derived
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
17/47
Data Type : Void
Typed as void
Has no values and operations
Both set of values are empty
Usually used in functions Eg: void printSum()
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
18/47
Data Type : Char
Used to hold characters or very small integer values
Usually 1 byte of memory
CODE:char letter;
letter = 'C';
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
19/47
Data Type : Integer
Coded as int
A number without a fraction part
C++ supports three different sizes of integer short int
int
long int
Can be signed and unsigned
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
20/47
Data Type : Integer
Type Byte Size MinimumValue
Maximum Value
short int 2 -32,768 32,767
unsigned short int 2 0 65,535
int 4 -2,147,483,648 2,147,483,647
unsigned int 4 0 4,294,967,295
long int 4 -2,147,483,648 2,147,483,647
unsigned long int 4 0 4,294,967,295
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
21/47
Data Type : Float
A number with fractional part such as 43.32, - 2.33
C++ supports three types of float
float
double long float
Stored in a form similar to scientific notation
Can be represented in
Fixed point (decimal) notation:31.4159 0.0000625
E notation:
3.14159E1 6.25e-5
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
22/47
Data Type Float
Are double by default
Can be forced to be float (3.14159f) or longdouble (0.0000625L)
All floating-point numbers are signed
Type Byte Size Precision Range
float 4 7 10-37 ..1038
double 8 15 10-307 ..10308
long double 8 15 10-307 ..10308
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
23/47
Data Type : Boolean
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
0
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
24/47
Variables
A storage location in memory whose contents can change whileprogram is running
Has an identifier and a type of data it can hold
Variable declaration syntax :type identifier [= initial_value]
eg : int itemsOrdered;
A variable name should represent the purpose of the variable.
To hold the number of items ordered.
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
25/47
Variables DIRI KO TAMAN..
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
26/47
Variables Initialization
To initialize a variable means to assign it a valuewhen it is declared:
int length = 12;
Can initialize some or all variables:
int length = 12, width = 5, area;
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
27/47
Variables Assignment
An assignment statement uses the = operator to store
a value in a variable.item = 12;
This statement assigns the value 12 to the itemvariable.
The variable receiving the value must appear on theleft side of the = operator.
This will NOT work:// ERROR!12 = item;
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
28/47
Variables Scope
The scope of a variable: the part of the program in which thevariable can be accessed
A variable cannot be used before it is defined
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
29/47
Variables Scope
#include using namespace std;#define EPF_RATE 0.11
double nett = 0;bool isEmployee;
int main(){
double salary;
isEmployee = truenett = salary ( salary * EPF_RATE);;
}void printSalary(){int Integer = 150;
cout
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
30/47
Variables Scope
Global scope
a global variable is a variable declared in the mainbody of the source code, outside all functions
Global variables can be referred from anywhere in thecode, even inside functions, whenever it is after itsdeclaration.
LocalScope
a local variable is one declared within the body of a
function or a block.
is limited to the block enclosed in braces ({}) where they
are declared.
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
31/47
Operators
C ++ uses a set of built in operators ( Eg : +, -,/ etc).
Four classes of operators :
Arithmetic
Relational
Logical
Assignment
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
32/47
Arithmetic Operators
Assume int a=4, b= 5, d;
C++
Operation
Arithmetic
Operator
C++
Expression
Value of d
after
assignment
Addition + d = a + b 9
Substraction - d = b - 2 3
Multiplication * d = a * b 20
Division / d = a/2 2
Modulus % d = b%3 2
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
33/47
Assignment Operators
Assume x=4, y=5, z=8;Assignment
Operator
Sample
Expression
Similar
Expression
Value of variable
after assignment
+= x += 5 x = x + 5 x=9
-= y -= x y = y - x y=1
*= x *= z x = x*z x=32
/= z /=2 z = z/2 z = 4
%= y %=x y = y%x y=1
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
34/47
Relational & Equality Operators
Assume y = 6, x =5
Relational Operators Sample Expression Value
> y > x T
< y < 2 F
>= x >= 3 T
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
35/47
Logical Operators
Logical Operators Called Sample Operation
&& AND expression1 && expression 2
| | OR
expression1 | | expression2
! NOT !expression
Example :Assume int x = 50
expression !expression Sample Expression
F T !(x == 60)
T F !(x != 60)
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
36/47
Logical Operators
Assume x=4, y=5, z=8
expression1 expression2 expression1 &&
expression2
Sample Expression
F F F ( y > 10) && ( z
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
37/47
Increment and Decrement Operators
Operator Called Sample
Expression
Similar
Expression
Explanation
++ preincrement ++a a = a +1
a += 1
Increment a by 1, then use
the new value of a in
expression in which a reside
++ postincrement a++ a = a +1
a += 1
Use the current value of a in
the expression which a
reside, then increment a by
1
- - predecrement - - a a = a -1
a -= 1
Decrement a by 1, then usethe new value of a in
expression in which a reside
- - postdecrement a - - a = a -1
a -= 1
Use the current value of a in
the expression which a
reside, then decrement a by1
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
38/47
Operator Precedence
Operators Associative
( ) Left to right
++ - - + - ! Right to left
* / % Left to right
+ - Left to right
< >= Left to right
= = != Left to right
&& Left to right
| | Left to right
*= += - = /= %= Right to left
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
39/47
Operator Precedence
Example 1:
int a=10,b=20, c=15, d=8;
a*b/(-c*31%13)*d
1. a*b/(-15*31%13)*d
2. a*b/(-465%13)*d
3. a*b/(-10)*d
4. 200/(-10)*d5. -20*d
6. -160
Example 2:
int a=15, b=6, c=5, d=4;
d *= ++b a/3 + c
1. d *= ++b a/3+ c
2. d*=7- a/3+c
3. d*=7- 5+c
4. d*=2 + c5. d*= 7
6. d = d*7
7. d = 28
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
40/47
Example of a program
// Operating with variables
#include using namespace std;
int main(){
//variables declarationint no1;
int no2;int value_div;int value_mod;
cout > no1 >> no2;value_div= no1 / no2;
cout
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
41/47
/*Evaluate two complex expression*/
#include
using namespace std;
void main ( )
{
int a =3, b=4, c = 5, x, y;
cout
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
42/47
Formatting Output
Output is made more readable using manipulator
Must include header file.
Manipulators Use
endl
dec
oct
hex
fixedshowpoint
setw()
setprecision
setfill()
New line
Formats output as decimal
Formats output as octal
Formats output as hexadecimal
Set floating-point decimalsShows decimal in floating-point values
Sets width of output fields
Specifies number of decimals for floating point
Specifies fill character
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
43/47
Formatting Output
Set Width (setw)
Set the minimum width for an output
Two alignment : right justified and left justified
Set Fill Character (setfill)
If the output width is greater than the data valuesplaced in it, a fill character can be used to fill theempty spaces whenever required
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
44/47
Formatting Output
Three integer manipulators:
Decimal (dec)
The default
Value in decimal form
Octal (oct)
Values are displayed in octal numbering system
Hexadecimal (hex)
Values are in hexadecimal format
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
45/47
Formatting Output
Three Floating-point manipulators:
Fixed (fixed)
Displays floating-point numbers (eg: 1.234568e+6) in
the fixed-point format (1234567.875)
Set precision (setprecision)
Used to control the number of the decimal places to be
displ
ayed Showpoint (showpoint)
To show value with the decimal point
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
46/47
46
//demonstrate the output manipulator
#include
#include
using namespace std;
int main( )
{
char aChar;
int integer;
float dlrAmnt;
cout integer>>dlrAmnt >> aChar;
cout
-
8/8/2019 MELJUN CORTES--IT102 Introduction to C Programming Complete
47/47
THANK YOU!