SlideShare a Scribd company logo
1 of 27
A First Book of C++A First Book of C++
Chapter 3 (Pt 2)Chapter 3 (Pt 2)
Assignment and Interactive InputAssignment and Interactive Input
∗ In this chapter, you will learn about:
∗ Assignment Operators
∗ Formatted Output
∗ Mathematical Library Functions
∗ Interactive Keyboard Input
∗ Symbolic Constraints
∗ Common Programming Errors
∗ Errors, Testing, and Debugging
A First Book of C++ 4th Edition 2
ObjectivesObjectives
∗ Standard preprogrammed functions that can be
included in a program
∗ Example: sqrt(number) calculates the square root of
number
∗ Table 3.5 lists more commonly used mathematical
functions provided in C++
∗ To access these functions in a program, the header file
cmath must be used
∗ Format: #include <cmath> - no semicolon
A First Book of C++ 4th Edition 3
Mathematical Library FunctionsMathematical Library Functions
Mathematical Library FunctionsMathematical Library Functions
(cont'd.)(cont'd.)
A First Book of C++ 4th Edition 4
∗ Before using a C++ mathematical function, the
programmer must know:
∗ Name of the desired mathematical function
∗ What the function does
∗ Type of data required by the function
∗ Data type of the result returned by the function
A First Book of C++ 4th Edition 5
Mathematical Library FunctionsMathematical Library Functions
(cont'd.)(cont'd.)
Mathematical Library FunctionsMathematical Library Functions
(cont'd.)(cont'd.)
A First Book of C++ 4th Edition 6
Mathematical Library FunctionsMathematical Library Functions
(cont'd.)(cont'd.)
A First Book of C++ 4th Edition 7
log base 2
e-3.2
log base 10
e ~ 2.718
Mathematical Library FunctionsMathematical Library Functions
(cont'd.)(cont'd.)
A First Book of C++ 4th Edition 8
∗ Cast: forces conversion of a value to another type
∗ Two versions: compile-time and runtime
∗ Compile-time cast: unary operator
∗ Syntax: dataType (expression)
∗ Example : int(23.45) or (int)23.45
∗ expression converted to data type of dataType
∗ Run-time cast: requested conversion checked at runtime,
applied if valid
∗ Syntax: static_cast<dataType> (expression)
∗ Example : static_cast<int>(23.45)
∗ expression converted to data type dataType
A First Book of C++ 4th Edition 9
CastsCasts
∗ If a program only executes once, data can be included
directly in the program
∗ If data changes, program must be rewritten
∗ Capability needed to enter different data
∗ cin object: used to enter data while a program is
executing
∗ Example: cin >> num1;
∗ Statement stops program execution and accepts data
from the keyboard
A First Book of C++ 4th Edition 10
Interactive Keyboard InputInteractive Keyboard Input
Interactive Keyboard Input (cont'd.)Interactive Keyboard Input (cont'd.)
A First Book of C++ 4th Edition 11
//prompt user to enter input
∗ First cout statement in Program 3.12 prints a string
∗ Tells the person at the terminal what to type
∗ A string used in this manner is called a prompt
∗ Next statement, cin, pauses computer
∗ Waits for user to type a value
∗ User signals the end of data entry by pressing Enter key
∗ Entered value stored in variable to right of extraction symbol
∗ Computer comes out of pause and goes to next cout
statement
A First Book of C++ 4th Edition 12
Interactive Keyboard Input (cont'd.)Interactive Keyboard Input (cont'd.)
∗ A well-constructed program should validate all user
input
∗ Ensures that program does not crash or produce
nonsensical output
∗ Robust programs: programs that detect and respond
effectively to unexpected user input
∗ Also known as “bulletproof” programs
∗ User-input validation: checking entered data and
providing user with a way to reenter invalid data
A First Book of C++ 4th Edition 13
User-Input ValidationUser-Input Validation
Magic numbers: literal data used in a program
Some have general meaning in context of program
Tax rate in a program to calculate taxes
Others have general meaning beyond the context of
the program
π = 3.1416; Euler’s number (e) = 2.71828
Constants can be assigned symbolic names
const float PI = 3.1416;
const double SALESTAX = 0.05;
A First Book of C++ 4th Edition 14
Symbolic ConstantsSymbolic Constants
const: qualifier specifies that the declared identifier
cannot be changed
A const identifier can be used in any C++ statement
in place of number it represents
circum = 2 * PI * radius;
amount = SALESTAX * purchase;
const identifiers commonly referred to as:
Symbolic constants
Named constants
A First Book of C++ 4th Edition 15
Symbolic Constants (cont'd.)Symbolic Constants (cont'd.)
∗ A variable or symbolic constant must be declared
before it is used
∗ C++ permits preprocessor directives/commands and
declaration statements to be placed anywhere in
program
∗ Doing so results in very poor program structure
A First Book of C++ 4th Edition 16
Placement of Statements
∗ As a matter of good programming practice, the order of
statements should be:
preprocessor directives
int main()
{
// symbolic constants
// variable declarations
// other executable statements
return 0;
}
A First Book of C++ 4th Edition 17
Placement of Statements (cont'd.)Placement of Statements (cont'd.)
Placement of Statements (cont'd.)Placement of Statements (cont'd.)
A First Book of C++ 4th Edition 18
∗ Forgetting to assign or initialize values for all variables
before they are used in an expression
∗ Using a mathematical library function without
including the preprocessor statement #include
<cmath>
∗ Using a library function without providing the correct
number of arguments of the proper data type
∗ Applying increment or decrement operator to an
expression
A First Book of C++ 4th Edition 19
Common Programming ErrorsCommon Programming Errors
∗ Forgetting to use the extraction operator, >>, to
separate variables in a cin statement
∗ Using an increment or decrement operator with
variables that appear more than once in the same
statement
∗ Being unwilling to test a program in depth
A First Book of C++ 4th Edition 20
Common Programming ErrorsCommon Programming Errors
(cont'd.)(cont'd.)
∗ Expression: sequence of operands separated by
operators
∗ Expressions are evaluated according to precedence
and associativity of its operands
∗ The assignment symbol, =, is an operator
∗ Assigns a value to variable
∗ Multiple assignments allowed in one statement
∗ Increment operator(++): adds 1 to a variable
∗ Decrement operator(--): subtracts 1 from a variable
A First Book of C++ 4th Edition 21
SummarySummary
∗ Increment and decrement operators can be used as
prefixes or postfixes
∗ C++ provides library functions for various
mathematical functions
∗ These functions operate on their arguments to calculate
a single value
∗ Arguments, separated by commas, included within
parentheses following function’s name
∗ Functions may be included within larger expressions
A First Book of C++ 4th Edition 22
Summary (cont'd.)Summary (cont'd.)
∗ cin object used for data input
∗ cin temporarily suspends statement execution until
data entered for variables in cin function
∗ Good programming practice: prior to a cin
statement, display message alerting user to type and
number of data items to be entered
∗ Message called a prompt
∗ Values can be equated to a single constant by using
the const keyword
A First Book of C++ 4th Edition 23
Summary (cont'd.)Summary (cont'd.)
∗ Program errors can be detected:
∗ Before a program is compiled
∗ While the program is being compiled
∗ While the program is running
∗ After the program has been run and the output is being
examined
∗ Desk checking
∗ Method for detecting errors before a program is compiled
∗ Program verification and testing
A First Book of C++ 4th Edition 24
Chapter Supplement: Errors, Testing,Chapter Supplement: Errors, Testing,
and Debuggingand Debugging
∗ Compile-time errors
∗ Errors detected while a program is being compiled
∗ No one but the programmer ever knows they occurred
∗ Runtime errors
∗ Errors that occur while a program is running
∗ More troubling because they occur while a user is
running the program
∗ Can be caused by program or hardware failures
A First Book of C++ 4th Edition 25
Compile-Time and Runtime ErrorsCompile-Time and Runtime Errors
∗ Syntax error
∗ Error in ordering valid language elements in a statement
or the attempt to use invalid language elements
∗ Logic error
∗ Characterized by erroneous, unexpected, or
unintentional output that’s a result of some flaw in the
program’s logic
A First Book of C++ 4th Edition 26
Syntax and Logic ErrorsSyntax and Logic Errors
∗ Program testing should be well thought out to maximize
the possibility of locating errors
∗ Bug: a program error
∗ Debugging
∗ Process of isolating and correcting the error and verifying the
correction
∗ Program tracing
∗ Process of imitating the computer by executing each
statement by hand as the computer would
∗ Echo printing
A First Book of C++ 4th Edition 27
Testing and DebuggingTesting and Debugging

More Related Content

What's hot

Control Flow Analysis
Control Flow AnalysisControl Flow Analysis
Control Flow AnalysisEdgar Barbosa
 
C Programming Language Tutorial for beginners - JavaTpoint
C Programming Language Tutorial for beginners - JavaTpointC Programming Language Tutorial for beginners - JavaTpoint
C Programming Language Tutorial for beginners - JavaTpointJavaTpoint.Com
 
Csc1100 lecture04 ch04
Csc1100 lecture04 ch04Csc1100 lecture04 ch04
Csc1100 lecture04 ch04IIUM
 
C LANGUAGE - BESTECH SOLUTIONS
C LANGUAGE - BESTECH SOLUTIONSC LANGUAGE - BESTECH SOLUTIONS
C LANGUAGE - BESTECH SOLUTIONSBESTECH SOLUTIONS
 
C language for Semester Exams for Engineers
C language for Semester Exams for Engineers C language for Semester Exams for Engineers
C language for Semester Exams for Engineers Appili Vamsi Krishna
 
Review chapter 1 2-3
Review chapter 1 2-3Review chapter 1 2-3
Review chapter 1 2-3ahmed22dg
 
Principle source of optimazation
Principle source of optimazationPrinciple source of optimazation
Principle source of optimazationSiva Sathya
 
Introduction to C++
Introduction to C++ Introduction to C++
Introduction to C++ Bharat Kalia
 
c++ programming Unit 2 basic structure of a c++ program
c++ programming Unit 2 basic structure of a c++ programc++ programming Unit 2 basic structure of a c++ program
c++ programming Unit 2 basic structure of a c++ programAAKASH KUMAR
 

What's hot (19)

Control Flow Analysis
Control Flow AnalysisControl Flow Analysis
Control Flow Analysis
 
Lesson 5 .1 selection structure
Lesson 5 .1 selection structureLesson 5 .1 selection structure
Lesson 5 .1 selection structure
 
Lesson 5.2 logical operators
Lesson 5.2 logical operatorsLesson 5.2 logical operators
Lesson 5.2 logical operators
 
C Programming Language Tutorial for beginners - JavaTpoint
C Programming Language Tutorial for beginners - JavaTpointC Programming Language Tutorial for beginners - JavaTpoint
C Programming Language Tutorial for beginners - JavaTpoint
 
Intro to c++
Intro to c++Intro to c++
Intro to c++
 
Lesson 2 beginning the problem solving process
Lesson 2 beginning the problem solving processLesson 2 beginning the problem solving process
Lesson 2 beginning the problem solving process
 
Introduction Of C++
Introduction Of C++Introduction Of C++
Introduction Of C++
 
Csc1100 lecture04 ch04
Csc1100 lecture04 ch04Csc1100 lecture04 ch04
Csc1100 lecture04 ch04
 
Lesson 3.2 data types for memory location
Lesson 3.2 data types for memory locationLesson 3.2 data types for memory location
Lesson 3.2 data types for memory location
 
C LANGUAGE - BESTECH SOLUTIONS
C LANGUAGE - BESTECH SOLUTIONSC LANGUAGE - BESTECH SOLUTIONS
C LANGUAGE - BESTECH SOLUTIONS
 
Lesson 3.1 variables and constant
Lesson 3.1 variables and constantLesson 3.1 variables and constant
Lesson 3.1 variables and constant
 
C++ rajan
C++ rajanC++ rajan
C++ rajan
 
C language for Semester Exams for Engineers
C language for Semester Exams for Engineers C language for Semester Exams for Engineers
C language for Semester Exams for Engineers
 
Review chapter 1 2-3
Review chapter 1 2-3Review chapter 1 2-3
Review chapter 1 2-3
 
C language
C languageC language
C language
 
Principle source of optimazation
Principle source of optimazationPrinciple source of optimazation
Principle source of optimazation
 
Introduction to C++
Introduction to C++ Introduction to C++
Introduction to C++
 
Embedded c
Embedded cEmbedded c
Embedded c
 
c++ programming Unit 2 basic structure of a c++ program
c++ programming Unit 2 basic structure of a c++ programc++ programming Unit 2 basic structure of a c++ program
c++ programming Unit 2 basic structure of a c++ program
 

Similar to C++ BOOK CHAPTER (20)

Chapter2
Chapter2Chapter2
Chapter2
 
Ch2 introduction to c
Ch2 introduction to cCh2 introduction to c
Ch2 introduction to c
 
Csc1100 lecture01 ch01-pt1
Csc1100 lecture01 ch01-pt1Csc1100 lecture01 ch01-pt1
Csc1100 lecture01 ch01-pt1
 
Csc1100 lecture01 ch01-pt1
Csc1100 lecture01 ch01-pt1Csc1100 lecture01 ch01-pt1
Csc1100 lecture01 ch01-pt1
 
Chap 3 c++
Chap 3 c++Chap 3 c++
Chap 3 c++
 
C Programming Unit-1
C Programming Unit-1C Programming Unit-1
C Programming Unit-1
 
C++ Overview
C++ OverviewC++ Overview
C++ Overview
 
Introduction%20C.pptx
Introduction%20C.pptxIntroduction%20C.pptx
Introduction%20C.pptx
 
UNIT-1 notes(Data Types – Variables – Operations – Expressions and Statements...
UNIT-1 notes(Data Types – Variables – Operations – Expressions and Statements...UNIT-1 notes(Data Types – Variables – Operations – Expressions and Statements...
UNIT-1 notes(Data Types – Variables – Operations – Expressions and Statements...
 
C language
C language C language
C language
 
Cpp
CppCpp
Cpp
 
C chap02
C chap02C chap02
C chap02
 
C chap02
C chap02C chap02
C chap02
 
Chap 2 c++
Chap 2 c++Chap 2 c++
Chap 2 c++
 
C++ programming language basic to advance level
C++ programming language basic to advance levelC++ programming language basic to advance level
C++ programming language basic to advance level
 
C++ AND CATEGORIES OF SOFTWARE
C++ AND CATEGORIES OF SOFTWAREC++ AND CATEGORIES OF SOFTWARE
C++ AND CATEGORIES OF SOFTWARE
 
#Code2 create c++ for beginners
#Code2 create  c++ for beginners #Code2 create  c++ for beginners
#Code2 create c++ for beginners
 
OOPS using C++
OOPS using C++OOPS using C++
OOPS using C++
 
Chap 5 c++
Chap 5 c++Chap 5 c++
Chap 5 c++
 
U19CS101 - PPS Unit 4 PPT (1).ppt
U19CS101 - PPS Unit 4 PPT (1).pptU19CS101 - PPS Unit 4 PPT (1).ppt
U19CS101 - PPS Unit 4 PPT (1).ppt
 

More from IIUM

How to use_000webhost
How to use_000webhostHow to use_000webhost
How to use_000webhostIIUM
 
Chapter 2
Chapter 2Chapter 2
Chapter 2IIUM
 
Chapter 1
Chapter 1Chapter 1
Chapter 1IIUM
 
Kreydle internship-multimedia
Kreydle internship-multimediaKreydle internship-multimedia
Kreydle internship-multimediaIIUM
 
03phpbldgblock
03phpbldgblock03phpbldgblock
03phpbldgblockIIUM
 
Chap2 practice key
Chap2 practice keyChap2 practice key
Chap2 practice keyIIUM
 
Group p1
Group p1Group p1
Group p1IIUM
 
Tutorial import n auto pilot blogspot friendly seo
Tutorial import n auto pilot blogspot friendly seoTutorial import n auto pilot blogspot friendly seo
Tutorial import n auto pilot blogspot friendly seoIIUM
 
Visual sceneperception encycloperception-sage-oliva2009
Visual sceneperception encycloperception-sage-oliva2009Visual sceneperception encycloperception-sage-oliva2009
Visual sceneperception encycloperception-sage-oliva2009IIUM
 
03 the htm_lforms
03 the htm_lforms03 the htm_lforms
03 the htm_lformsIIUM
 
Exercise on algo analysis answer
Exercise on algo analysis   answerExercise on algo analysis   answer
Exercise on algo analysis answerIIUM
 
Redo midterm
Redo midtermRedo midterm
Redo midtermIIUM
 
Heaps
HeapsHeaps
HeapsIIUM
 
Report format
Report formatReport format
Report formatIIUM
 
Edpuzzle guidelines
Edpuzzle guidelinesEdpuzzle guidelines
Edpuzzle guidelinesIIUM
 
Final Exam Paper
Final Exam PaperFinal Exam Paper
Final Exam PaperIIUM
 
Final Exam Paper
Final Exam PaperFinal Exam Paper
Final Exam PaperIIUM
 
Group assignment 1 s21516
Group assignment 1 s21516Group assignment 1 s21516
Group assignment 1 s21516IIUM
 
Avl tree-rotations
Avl tree-rotationsAvl tree-rotations
Avl tree-rotationsIIUM
 
Week12 graph
Week12   graph Week12   graph
Week12 graph IIUM
 

More from IIUM (20)

How to use_000webhost
How to use_000webhostHow to use_000webhost
How to use_000webhost
 
Chapter 2
Chapter 2Chapter 2
Chapter 2
 
Chapter 1
Chapter 1Chapter 1
Chapter 1
 
Kreydle internship-multimedia
Kreydle internship-multimediaKreydle internship-multimedia
Kreydle internship-multimedia
 
03phpbldgblock
03phpbldgblock03phpbldgblock
03phpbldgblock
 
Chap2 practice key
Chap2 practice keyChap2 practice key
Chap2 practice key
 
Group p1
Group p1Group p1
Group p1
 
Tutorial import n auto pilot blogspot friendly seo
Tutorial import n auto pilot blogspot friendly seoTutorial import n auto pilot blogspot friendly seo
Tutorial import n auto pilot blogspot friendly seo
 
Visual sceneperception encycloperception-sage-oliva2009
Visual sceneperception encycloperception-sage-oliva2009Visual sceneperception encycloperception-sage-oliva2009
Visual sceneperception encycloperception-sage-oliva2009
 
03 the htm_lforms
03 the htm_lforms03 the htm_lforms
03 the htm_lforms
 
Exercise on algo analysis answer
Exercise on algo analysis   answerExercise on algo analysis   answer
Exercise on algo analysis answer
 
Redo midterm
Redo midtermRedo midterm
Redo midterm
 
Heaps
HeapsHeaps
Heaps
 
Report format
Report formatReport format
Report format
 
Edpuzzle guidelines
Edpuzzle guidelinesEdpuzzle guidelines
Edpuzzle guidelines
 
Final Exam Paper
Final Exam PaperFinal Exam Paper
Final Exam Paper
 
Final Exam Paper
Final Exam PaperFinal Exam Paper
Final Exam Paper
 
Group assignment 1 s21516
Group assignment 1 s21516Group assignment 1 s21516
Group assignment 1 s21516
 
Avl tree-rotations
Avl tree-rotationsAvl tree-rotations
Avl tree-rotations
 
Week12 graph
Week12   graph Week12   graph
Week12 graph
 

Recently uploaded

Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdfFraming an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdfUjwalaBharambe
 
Types of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptxTypes of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptxEyham Joco
 
internship ppt on smartinternz platform as salesforce developer
internship ppt on smartinternz platform as salesforce developerinternship ppt on smartinternz platform as salesforce developer
internship ppt on smartinternz platform as salesforce developerunnathinaik
 
Painted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaPainted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaVirag Sontakke
 
भारत-रोम व्यापार.pptx, Indo-Roman Trade,
भारत-रोम व्यापार.pptx, Indo-Roman Trade,भारत-रोम व्यापार.pptx, Indo-Roman Trade,
भारत-रोम व्यापार.pptx, Indo-Roman Trade,Virag Sontakke
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationnomboosow
 
DATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersDATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersSabitha Banu
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTiammrhaywood
 
Meghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentMeghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentInMediaRes1
 
Capitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitolTechU
 
MARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupMARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupJonathanParaisoCruz
 
Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Celine George
 
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxEPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxRaymartEstabillo3
 
Biting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfBiting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfadityarao40181
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Educationpboyjonauth
 
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...M56BOOKSTORE PRODUCT/SERVICE
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for BeginnersSabitha Banu
 

Recently uploaded (20)

Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdfFraming an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
 
Types of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptxTypes of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptx
 
internship ppt on smartinternz platform as salesforce developer
internship ppt on smartinternz platform as salesforce developerinternship ppt on smartinternz platform as salesforce developer
internship ppt on smartinternz platform as salesforce developer
 
Painted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaPainted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of India
 
भारत-रोम व्यापार.pptx, Indo-Roman Trade,
भारत-रोम व्यापार.pptx, Indo-Roman Trade,भारत-रोम व्यापार.pptx, Indo-Roman Trade,
भारत-रोम व्यापार.pptx, Indo-Roman Trade,
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communication
 
DATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersDATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginners
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
 
Meghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentMeghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media Component
 
Capitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptx
 
MARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupMARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized Group
 
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
 
Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17
 
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxEPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
 
Biting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfBiting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdf
 
9953330565 Low Rate Call Girls In Rohini Delhi NCR
9953330565 Low Rate Call Girls In Rohini  Delhi NCR9953330565 Low Rate Call Girls In Rohini  Delhi NCR
9953330565 Low Rate Call Girls In Rohini Delhi NCR
 
Model Call Girl in Bikash Puri Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Bikash Puri  Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Bikash Puri  Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Bikash Puri Delhi reach out to us at 🔝9953056974🔝
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Education
 
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for Beginners
 

C++ BOOK CHAPTER

  • 1. A First Book of C++A First Book of C++ Chapter 3 (Pt 2)Chapter 3 (Pt 2) Assignment and Interactive InputAssignment and Interactive Input
  • 2. ∗ In this chapter, you will learn about: ∗ Assignment Operators ∗ Formatted Output ∗ Mathematical Library Functions ∗ Interactive Keyboard Input ∗ Symbolic Constraints ∗ Common Programming Errors ∗ Errors, Testing, and Debugging A First Book of C++ 4th Edition 2 ObjectivesObjectives
  • 3. ∗ Standard preprogrammed functions that can be included in a program ∗ Example: sqrt(number) calculates the square root of number ∗ Table 3.5 lists more commonly used mathematical functions provided in C++ ∗ To access these functions in a program, the header file cmath must be used ∗ Format: #include <cmath> - no semicolon A First Book of C++ 4th Edition 3 Mathematical Library FunctionsMathematical Library Functions
  • 4. Mathematical Library FunctionsMathematical Library Functions (cont'd.)(cont'd.) A First Book of C++ 4th Edition 4
  • 5. ∗ Before using a C++ mathematical function, the programmer must know: ∗ Name of the desired mathematical function ∗ What the function does ∗ Type of data required by the function ∗ Data type of the result returned by the function A First Book of C++ 4th Edition 5 Mathematical Library FunctionsMathematical Library Functions (cont'd.)(cont'd.)
  • 6. Mathematical Library FunctionsMathematical Library Functions (cont'd.)(cont'd.) A First Book of C++ 4th Edition 6
  • 7. Mathematical Library FunctionsMathematical Library Functions (cont'd.)(cont'd.) A First Book of C++ 4th Edition 7 log base 2 e-3.2 log base 10 e ~ 2.718
  • 8. Mathematical Library FunctionsMathematical Library Functions (cont'd.)(cont'd.) A First Book of C++ 4th Edition 8
  • 9. ∗ Cast: forces conversion of a value to another type ∗ Two versions: compile-time and runtime ∗ Compile-time cast: unary operator ∗ Syntax: dataType (expression) ∗ Example : int(23.45) or (int)23.45 ∗ expression converted to data type of dataType ∗ Run-time cast: requested conversion checked at runtime, applied if valid ∗ Syntax: static_cast<dataType> (expression) ∗ Example : static_cast<int>(23.45) ∗ expression converted to data type dataType A First Book of C++ 4th Edition 9 CastsCasts
  • 10. ∗ If a program only executes once, data can be included directly in the program ∗ If data changes, program must be rewritten ∗ Capability needed to enter different data ∗ cin object: used to enter data while a program is executing ∗ Example: cin >> num1; ∗ Statement stops program execution and accepts data from the keyboard A First Book of C++ 4th Edition 10 Interactive Keyboard InputInteractive Keyboard Input
  • 11. Interactive Keyboard Input (cont'd.)Interactive Keyboard Input (cont'd.) A First Book of C++ 4th Edition 11 //prompt user to enter input
  • 12. ∗ First cout statement in Program 3.12 prints a string ∗ Tells the person at the terminal what to type ∗ A string used in this manner is called a prompt ∗ Next statement, cin, pauses computer ∗ Waits for user to type a value ∗ User signals the end of data entry by pressing Enter key ∗ Entered value stored in variable to right of extraction symbol ∗ Computer comes out of pause and goes to next cout statement A First Book of C++ 4th Edition 12 Interactive Keyboard Input (cont'd.)Interactive Keyboard Input (cont'd.)
  • 13. ∗ A well-constructed program should validate all user input ∗ Ensures that program does not crash or produce nonsensical output ∗ Robust programs: programs that detect and respond effectively to unexpected user input ∗ Also known as “bulletproof” programs ∗ User-input validation: checking entered data and providing user with a way to reenter invalid data A First Book of C++ 4th Edition 13 User-Input ValidationUser-Input Validation
  • 14. Magic numbers: literal data used in a program Some have general meaning in context of program Tax rate in a program to calculate taxes Others have general meaning beyond the context of the program π = 3.1416; Euler’s number (e) = 2.71828 Constants can be assigned symbolic names const float PI = 3.1416; const double SALESTAX = 0.05; A First Book of C++ 4th Edition 14 Symbolic ConstantsSymbolic Constants
  • 15. const: qualifier specifies that the declared identifier cannot be changed A const identifier can be used in any C++ statement in place of number it represents circum = 2 * PI * radius; amount = SALESTAX * purchase; const identifiers commonly referred to as: Symbolic constants Named constants A First Book of C++ 4th Edition 15 Symbolic Constants (cont'd.)Symbolic Constants (cont'd.)
  • 16. ∗ A variable or symbolic constant must be declared before it is used ∗ C++ permits preprocessor directives/commands and declaration statements to be placed anywhere in program ∗ Doing so results in very poor program structure A First Book of C++ 4th Edition 16 Placement of Statements
  • 17. ∗ As a matter of good programming practice, the order of statements should be: preprocessor directives int main() { // symbolic constants // variable declarations // other executable statements return 0; } A First Book of C++ 4th Edition 17 Placement of Statements (cont'd.)Placement of Statements (cont'd.)
  • 18. Placement of Statements (cont'd.)Placement of Statements (cont'd.) A First Book of C++ 4th Edition 18
  • 19. ∗ Forgetting to assign or initialize values for all variables before they are used in an expression ∗ Using a mathematical library function without including the preprocessor statement #include <cmath> ∗ Using a library function without providing the correct number of arguments of the proper data type ∗ Applying increment or decrement operator to an expression A First Book of C++ 4th Edition 19 Common Programming ErrorsCommon Programming Errors
  • 20. ∗ Forgetting to use the extraction operator, >>, to separate variables in a cin statement ∗ Using an increment or decrement operator with variables that appear more than once in the same statement ∗ Being unwilling to test a program in depth A First Book of C++ 4th Edition 20 Common Programming ErrorsCommon Programming Errors (cont'd.)(cont'd.)
  • 21. ∗ Expression: sequence of operands separated by operators ∗ Expressions are evaluated according to precedence and associativity of its operands ∗ The assignment symbol, =, is an operator ∗ Assigns a value to variable ∗ Multiple assignments allowed in one statement ∗ Increment operator(++): adds 1 to a variable ∗ Decrement operator(--): subtracts 1 from a variable A First Book of C++ 4th Edition 21 SummarySummary
  • 22. ∗ Increment and decrement operators can be used as prefixes or postfixes ∗ C++ provides library functions for various mathematical functions ∗ These functions operate on their arguments to calculate a single value ∗ Arguments, separated by commas, included within parentheses following function’s name ∗ Functions may be included within larger expressions A First Book of C++ 4th Edition 22 Summary (cont'd.)Summary (cont'd.)
  • 23. ∗ cin object used for data input ∗ cin temporarily suspends statement execution until data entered for variables in cin function ∗ Good programming practice: prior to a cin statement, display message alerting user to type and number of data items to be entered ∗ Message called a prompt ∗ Values can be equated to a single constant by using the const keyword A First Book of C++ 4th Edition 23 Summary (cont'd.)Summary (cont'd.)
  • 24. ∗ Program errors can be detected: ∗ Before a program is compiled ∗ While the program is being compiled ∗ While the program is running ∗ After the program has been run and the output is being examined ∗ Desk checking ∗ Method for detecting errors before a program is compiled ∗ Program verification and testing A First Book of C++ 4th Edition 24 Chapter Supplement: Errors, Testing,Chapter Supplement: Errors, Testing, and Debuggingand Debugging
  • 25. ∗ Compile-time errors ∗ Errors detected while a program is being compiled ∗ No one but the programmer ever knows they occurred ∗ Runtime errors ∗ Errors that occur while a program is running ∗ More troubling because they occur while a user is running the program ∗ Can be caused by program or hardware failures A First Book of C++ 4th Edition 25 Compile-Time and Runtime ErrorsCompile-Time and Runtime Errors
  • 26. ∗ Syntax error ∗ Error in ordering valid language elements in a statement or the attempt to use invalid language elements ∗ Logic error ∗ Characterized by erroneous, unexpected, or unintentional output that’s a result of some flaw in the program’s logic A First Book of C++ 4th Edition 26 Syntax and Logic ErrorsSyntax and Logic Errors
  • 27. ∗ Program testing should be well thought out to maximize the possibility of locating errors ∗ Bug: a program error ∗ Debugging ∗ Process of isolating and correcting the error and verifying the correction ∗ Program tracing ∗ Process of imitating the computer by executing each statement by hand as the computer would ∗ Echo printing A First Book of C++ 4th Edition 27 Testing and DebuggingTesting and Debugging