0% found this document useful (0 votes)
269 views

Introduction To C++ Programming Language

this is the introduction of c++ programming. it introduce the basic concept . if you like this and feel helpful, please subscribe me. thank you. i will post another chapter later.

Uploaded by

ong kar weng
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
269 views

Introduction To C++ Programming Language

this is the introduction of c++ programming. it introduce the basic concept . if you like this and feel helpful, please subscribe me. thank you. i will post another chapter later.

Uploaded by

ong kar weng
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 47

Introduction To C++

Programming Language

LECTURE
What is C++
 C++ is a high-level language 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 used to construct a computer


Structure of a C++ Program

Figure 3.1 Structure of a C++ Program


A Typical C++ Program
// A typical C++ Program
Comment

# include <header files> Preprocessor Directive


using namespace std;
# define PI 3.142

int Integer;
Global Declaration
int main ( )
{
Local declaration
double radius, area;

radius = 7; Main
area = radius * radius * PI; Statements function
return 0;
}
Character Set
 C++ is composed of character set :
 Number : 0 to 9
 Alphabetical : a to z and A to Z
 Spacing
 Special Character :
 , . : ; ? ! ( ) {} “ ‘ + - * / = > < # % & ^ ~ | / _
Token
 Token : combination of the characters in C++
 Categorised into:
 Identifiers
 Reserved words/keywords
 Constants
 Literal String
 Punctuators
 Operators
Identifiers
 Allows programmers to name data and other objects in the
program-variable, constant, function etc.
 Can use any capital letter A through Z, lowercase letters a
through 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 and
underscores, cannot contain spaces
 It cannot duplicate any reserved word
 C++ is case-sensitive; this means that CASE, Case, case,
and CaSe are four completely different words.
Valid and Invalid Identifiers
Valid names Invalid names

 A  $sum // $ is illegal
 student_name  2names // can’t start with

 _aSystemNam 2
e  stdnt Nmbr // can’t have

 pi space
 al  int // reserved word

 stdntNm

 _anthrSysNm

 PI
Reserved word/Keywords
 A word that has special meaning in
C++.
 Keywords cannot be used to name

identifiers.
Constant
 Data values that cannot be changed
during the execution of a program
 Types of constant:

 Literals constant
 Defined constants

 Declared constants
Literals Constant
 If the data cannot be changed, we can simply code
the data value itself in a statement
Eg: discount = 0.10 ;
0.10 is a literal
 Categorised into: constant
 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).


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 <header files>
using namespace std;
#define EPF_RATE 3.142

int main()
{
……;
nett = salary – ( salary * EPF_RATE);
………;
}
Declared Constants

se a type const qualifier to indicate that data


cannot be changed and to fix the contents of
the memory location

g: const float
#include <headerpi = 3.1416;
files>
using namespace std;
#define EPF_RATE 3.142
eclared inside a function
int main()
{
const double socso_rate = 0.05;
nett = salary – ( salary * EPF_RATE * socso_rate);
………;
}
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


determined by the data it returns
Data Types
 Standard
 They serves as the basic building blocks for derived
types (complex structures that are built using the
standard types

 Serves as the basic building blocks for derived types


Data Types
 Derived
Data Type : Void
 Typed as void
 Has no values and operations
 Both set of values are empty
 Usually used in functions
 Eg: void printSum()
Data Type : Char
 Used to hold characters or very small
integer values
 Usually 1 byte of memory
 CODE:
char letter;
letter = 'C';
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
Data Type : Integer
Type Byte Size Minimum Maximum Value
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


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
Data Type Float
 Are double by default
 Can be forced to be float (3.14159f) or
long double (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


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
Variables
 A storage location in memory whose contents can change while
program is running
 Has an identifier and a type of data it can hold
 Variable declaration syntax :
type identifier [= initial_value]
eg : int itemsOrdered;

To hold the number of items


 A variable name should represent the purpose of the variable.
ordered.
Variables
Variables Initialization
 To initialize a variable means to assign it
a value when it is declared:
int length = 12;

 Can initialize some or all variables:


int length = 12, width = 5, area;
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 item
variable.
 The variable receiving the value must appear on
the left side of the = operator.
 This will NOT work:
// ERROR!
12 = item;
Variables 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
Variables Scope

Global Variables

Local Variable

Local Variable
Variables Scope
 Global scope
 a global variable is a variable declared in the main
body of the source code, outside all functions
 Global variables can be referred from anywhere in the
code, even inside functions, whenever it is after its
declaration.
 Local Scope
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.
Operators
 C ++ uses a set of built in operators ( Eg : +,
-, / etc).
 Four classes of operators :
 Arithmetic
 Relational

 Logical

 Assignment
Arithmetic Operators
 Assume int a=4, b= 5, d;
C++ Arithmetic C++ Value of d
Operation Operator Expression 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
Assignment Operators
 Assume x=4, y=5, z=8;
Assignment Sample Similar Value of variable
Operator Expression Expression 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


Relational & Equality
Operators
 Assume y = 6, x =5
Relational Operators Sample Expression Value

> y>x T
< y<2 F
>= x >= 3 T
<= y <= x F

Equality Operators Sample Expression Value

== x == 5 T

!= y !=6 F
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)
Logical Operators
 Assume x=4, y=5, z=8
expression1 expression2 expression1 && Sample Expression
expression2

F F F ( y > 10) && ( z <=x )

F T F ( z <= y) && ( x == 4)

T F F ( y != z) && ( z < x )

T T T ( z >= y ) && ( x != 3 )
Increment and Decrement
Operators
Operator Called Sample Similar Explanation
Expression Expression

++ preincrement ++a a = a +1 Increment a by 1, then use


the new value of a in
a += 1 expression in which a reside

++ postincrement a++ a = a +1 Use the current value of a in


the expression which a
a += 1 reside, then increment a by
1
-- predecrement --a a = a -1 Decrement a by 1, then use
the new value of a in
a -= 1 expression in which a reside

-- postdecrement a-- a = a -1 Use the current value of a in


the expression which a
a -= 1 reside, then decrement a by
1
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
Operator Precedence
Example 1: Example 2:
int a=10, b=20, c=15, d=8; int a=15, b=6, c=5, d=4;
a*b/(-c*31%13)*d d *= ++b – a/3 + c
1. a*b/(-15*31%13)*d 1. d *= ++b – a/3+ c
2. a*b/(-465%13)*d 2. d*=7- a/3+c
3. a*b/(-10)*d 3. d*=7- 5+c
4. 200/(-10)*d 4. d*=2 + c
5. -20*d 5. d*= 7
6. -160 6. d = d*7
7. d = 28
Example of a program

// Operating with variables


#include <iostream>
using namespace std;

int main()
{
//variables declaration
int no1;
int no2; Output :
int value_div;
int value_mod; Enter two integral numbers : 10 6
10 / 6 is 1 with a remainder of 4
cout << “Enter two integral numbers:”;
cin >> no1 >> no2;
value_div= no1 / no2;

cout << no1 << “ / ” << no2 << “ is ” <<


value_div;

value_mod = no1 % no2;


cout << “ with a remainder of ” <<
value_mod
<< endl;
return 0;
}
/*Evaluate two complex expression*/
#include <iostream>
using namespace std;
void main ( )
{
int a =3, b=4, c = 5, x, y;
cout << “Initial values of the variables:\n”;
cout << “a = “ << a<< “ b = “ << b <<“ c = “ Output :
<< c<< endl; Initial values of the variables :
cout << endl; a=3 b=4 c= 5
x = a * 4 + b / 2 – c * b;
cout << “Value of a * 4 + b/2-c * b is : “ Value of a * 4 + b/2-c * b is : -6
Value of - - a * (3 + b) / 2 – c++ * b is: -13
<< x << endl;
y = - - a * (3 + b) / 2 – c++ * b; Values of the variables are now :

cout << “Value of - - a * (3 + b) / 2 – c++ * b is: “ a=2 b=4 c= 6

<< y << endl;


cout << “a = “ << a << “ b = “ << b << “ c = “
<< c << endl;
}
Formatting Output
 Output is made more readable using
manipulator
 Must include <iomanip> header file.
Manipulators Use

endl New line


dec Formats output as decimal
oct Formats output as octal
hex Formats output as hexadecimal
fixed Set floating-point decimals
showpoint Shows decimal in floating-point values
setw(…) Sets width of output fields
setprecision Specifies number of decimals for floating point
setfill(…) Specifies fill character
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
values placed in it, a fill character can be
used to fill the empty spaces whenever
required
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
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 displayed
 Showpoint (showpoint)
 To show value with the decimal point
//demonstrate the output manipulator
#include <iostream>
#include <iomanip>
using namespace std;
int main( )
{
char aChar;
int integer;
float dlrAmnt;
Output :
cout << “Please enter an integer ,\n”; Please enter an integer,

<< “ a dollar amount and a character.\n”; a dollar amount and a


character.
cin >> integer>>dlrAmnt >> aChar;
12 123.45 G

cout <<“\nThank you.You entered:\n”;


Thank you. You entered:
cout << setw( 6 ) << integer << “ “
12 $****123.45 G
<< setfill(‘*’) << setprecision (2) << fixed
<< ‘$’ << setw(10) << dlrAmnt
<< setfill(‘ ‘) << setw( 3 ) <<aChar << endl;
46
}
THANK YOU!

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy