MELJUN CORTES Intro to C Programming
-
Upload
meljun-cortes -
Category
Technology
-
view
158 -
download
3
Transcript of MELJUN CORTES Intro to C Programming
![Page 1: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/1.jpg)
Introduction To C++ Introduction To C++ Programming Language Programming Language
LECTURE 3 MELJUN CORTES, MBA,MPAMELJUN CORTES, MBA,MPA
![Page 2: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/2.jpg)
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 program.
![Page 3: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/3.jpg)
Structure of a C++ Program
Figure 3.1 Structure of a C++ Program
![Page 4: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/4.jpg)
A Typical C++ Program // A typical C++ Program
# include <header files>
using namespace std;# define PI 3.142
int Integer;
int main ( ){
double radius, area;
radius = 7; area = radius * radius * PI; return 0;
}
Preprocessor Directive
Comment
Mainfunction
Global Declaration
Local declaration
Statements
![Page 5: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/5.jpg)
Character Set
C++ is composed of character set : Number : 0 to 9 Alphabetical : a to z and A to Z Spacing Special Character :
, . : ; ? ! ( ) {} “ ‘ + - * / = > < # % & ^ ~ | / _
![Page 6: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/6.jpg)
Token
Token : combination of the characters in C++
Categorised into: Identifiers Reserved words/keywords Constants Literal String Punctuators Operators
![Page 7: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/7.jpg)
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.
![Page 8: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/8.jpg)
Valid and Invalid Identifiers
Valid names
A student_name _aSystemName pi al stdntNm _anthrSysNm PI
Invalid names
$sum // $ is illegal 2names // can’t start with 2 stdnt Nmbr // can’t have
space int // reserved word
![Page 9: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/9.jpg)
Reserved word/Keywords
A word that has special meaning in C++. Keywords cannot be used to name
identifiers.
![Page 10: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/10.jpg)
Constant
Data values that cannot be changed during the execution of a program
Types of constant: Literals constant Defined constants Declared constants
![Page 11: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/11.jpg)
Literals Constant
If the data cannot be changed, we can simply code the data value itself in a statementEg: 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
![Page 12: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/12.jpg)
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); ………;}
![Page 13: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/13.jpg)
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 <header files> using namespace std;#define EPF_RATE 3.142
int main(){ const double socso_rate = 0.05; nett = salary – ( salary * EPF_RATE * socso_rate); ………;}
![Page 14: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/14.jpg)
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
![Page 15: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/15.jpg)
Data Types
Standard They serves as the basic building blocks
for d e rive d ty p e s (complex structures that are built using the standard types
Serves as the basic building blocks for d e rive d ty p e s
![Page 16: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/16.jpg)
Data Types
Derived
![Page 17: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/17.jpg)
Data Type : Void
Typed as void Has no values and operations Both set of values are empty Usually used in functions
Eg: void printSum()
![Page 18: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/18.jpg)
Data Type : Char
Used to hold characters or very small integer values
Usually 1 byte of memory CODE:
char letter;letter = 'C';
![Page 19: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/19.jpg)
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
![Page 20: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/20.jpg)
Data Type : IntegerType Byte Size Minimum
Value
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
![Page 21: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/21.jpg)
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
![Page 22: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/22.jpg)
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
![Page 23: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/23.jpg)
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
![Page 24: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/24.jpg)
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;
A variable name should represent the purpose of the variable.
To hold the number of items ordered.
![Page 25: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/25.jpg)
Variables
![Page 26: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/26.jpg)
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;
![Page 27: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/27.jpg)
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;
![Page 28: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/28.jpg)
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
![Page 29: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/29.jpg)
Variables Scope
Global Variables
Local Variable
Local Variable
![Page 30: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/30.jpg)
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.
![Page 31: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/31.jpg)
Operators
C ++ uses a set of built in operators ( Eg : +, -, / etc).
Four classes of operators : Arithmetic Relational Logical Assignment
![Page 32: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/32.jpg)
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
![Page 33: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/33.jpg)
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
![Page 34: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/34.jpg)
Relational & Equality Operators
Assume y = 6, x =5Relational 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
![Page 35: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/35.jpg)
Logical OperatorsLogical 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)
![Page 36: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/36.jpg)
Logical Operators
Assume x=4, y=5, z=8expression1 expression2 expression1 &&
expression2
Sample Expression
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 )
![Page 37: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/37.jpg)
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 use the 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 by 1
![Page 38: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/38.jpg)
Operator PrecedenceOperators 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
![Page 39: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/39.jpg)
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)*d
5. -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 + c
5. d*= 7
6. d = d*7
7. d = 28
![Page 40: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/40.jpg)
Example of a program
// Operating with variables#include <iostream>using namespace std;
int main(){
//variables declaration int no1; int no2;
int value_div; int value_mod;
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;}
Output :
Enter two integral numbers : 10 6
10 / 6 is 1 with a remainder of 4
![Page 41: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/41.jpg)
/*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 = “
<< c<< endl;
cout << endl;
x = a * 4 + b / 2 – c * b;
cout << “Value of a * 4 + b/2-c * b is : “
<< x << endl;
y = - - a * (3 + b) / 2 – c++ * b;
cout << “Value of - - a * (3 + b) / 2 – c++ * b is: “
<< y << endl;
cout << “a = “ << a << “ b = “ << b << “ c = “
<< c << endl;
}
Output :
Initial values of the variables :
a = 3 b = 4 c = 5
Value of a * 4 + b/2-c * b is : -6Value of - - a * (3 + b) / 2 – c++ * b is: -13
Values of the variables are now :
a = 2 b = 4 c = 6
![Page 42: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/42.jpg)
Formatting Output
Output is made more readable using manipulator
Must include <iomanip> header file.Manipulators Use
endldecocthexfixedshowpointsetw(…)setprecisionsetfill(…)
New lineFormats output as decimalFormats output as octalFormats output as hexadecimalSet floating-point decimalsShows decimal in floating-point valuesSets width of output fieldsSpecifies number of decimals for floating pointSpecifies fill character
![Page 43: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/43.jpg)
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
![Page 44: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/44.jpg)
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
![Page 45: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/45.jpg)
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
![Page 46: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/46.jpg)
46
//demonstrate the output manipulator
#include <iostream>
#include <iomanip>
using namespace std;
int main( )
{
char aChar;
int integer;
float dlrAmnt;
cout << “Please enter an integer ,\n”;
<< “ a dollar amount and a character.\n”;
cin >> integer>>dlrAmnt >> aChar;
cout <<“\nThank you.You entered:\n”;
cout << setw( 6 ) << integer << “ “
<< setfill(‘*’) << setprecision (2) << fixed
<< ‘$’ << setw(10) << dlrAmnt
<< setfill(‘ ‘) << setw( 3 ) <<aChar << endl;
}
Output :
Please enter an integer,
a dollar amount and a character.
12 123.45 G
Thank you. You entered:
12 $****123.45 G
![Page 47: MELJUN CORTES Intro to C Programming](https://reader034.fdocuments.us/reader034/viewer/2022052400/55a14f3c1a28abe2488b4759/html5/thumbnails/47.jpg)
THANK YOU!THANK YOU!