Download presentation
Presentation is loading. Please wait.
Published byLeslie Arthur Stanley Modified over 9 years ago
1
Overview of C++ Chapter 2
2
2 2.1 C++ Language Elements t Comments make a program easier to understand t // Used to signify a comment on a single line t /* Text text */ use if comments on multi lines t Don’t embed comments within /* */ comments
3
3 Compiler Directives t #include –Compiler directive –Processed at compilation time –Instructs compiler on what you want in the program t #include –Adds library files to program –Used with –Also “ “ user defined
4
4 Compiler Directives t Stream data type –Object that is a stream of characters –Defined in iostream –Entered on the keyboard(cin) –Displayed on monitor(cout)
5
5 Declarations t Direct compiler on requirements t Based on data needs (data identifiers) t Each identifier needed must be declared t Comma used to separate identifiers t cin and cout are undeclared identifiers –Special elements called streams –cin - input stream, cout - output stream –Included with the iostream not declared
6
6 Executable Statements t cout get output –cout << “Enter the fabric size in square meters: ”; t cin get input –cin >> sizeInSqmeters; t Assignment –sizeInSqyards = metersToYards * sizeInSqmeters;
7
7 2.2 Reserved Words and Identifiers t Reserved words have special meanings –Can NOT be used for other purposes (const, float and void are some examples) t Identifiers (variables) –Used to store data by the program (user defined) –Valid identifiers - letter, letter1, _letter –Invalid identifiers - 1letter, const, hell o
8
8 Reserved Words and Identifiers t Special symbols –C++ has rules for special symbols –= * ; { } ( ) // > t Appendix B –Examples of reserved words –Special characters
9
9 Upper and Lower Case t C++ case sensitive –Compiler differentiates upper & lower case –Identifiers can be either –Be careful though (cost != Cost) t Blank spaces –Use space to make program readable –Use care in placing spaces
10
10 2.3 Data Types and Declarations t Predefined data types –int(integers) Positive or negative whole numbers 1000 12199100000 INT_MAX- largest int allowed by compiler –float(real numbers) Positive or negative decimal numbers 10.51.2100.0299.88
11
11 Data Types and Declarations t Predefined data types –bool(boolean) true false –char(Characters) Represent characters
12
12 Data Types and Declarations t The basic integer type is int –The size of an int depends on the machine and the compiler On pc’s it is normally 16 or 32 bits t Other integers types –short: typically uses less bits –long: typically uses more bits
13
13 Data Types and Declarations t Different types allow programmers to use resources more efficiently t Standard arithmetic and relational operations are available for these types
14
14 Data Types and Declarations t Floating-point types represent real numbers –Integer part –Fractional part t The number 108.1517 breaks down into the following parts –108 - integer part –1517 - fractional part
15
15 Data Types and Declarations t C++ provides three floating-point types –float –double –long double
16
16 Data Types and Declarations t Predefined data types –char(characters) Individual character value (letter or number) Character literal enclosed in single quotes ‘A’ –bool(true / false) t Ordinal types –intboolchar –Values can be listed
17
17 Data Types and Declarations Character type char is related to the integer types t Characters are encoded using a scheme where an integer represents a particular character
18
18 Data Types and Declarations t ASCII is the dominant encoding scheme –Examples ' ' encoded as 32 '+' encoded as 43 'A' encoded as 65 'Z' encoded as 90 ’a' encoded as 97 ’z' encoded as 122
19
19 string Class t String object data type –A literal string constant is a sequence of zero or more characters enclosed in double quotes – "Are you aware?\n" –Individual characters of string are stored in consecutive memory locations –The null character ('\0') is appended to strings so that the compiler knows where in memory strings ends
20
20 string Class t String literal –“A” –“1234” –“Enter the distance” t Additional data types included in library #include –Various operations on strings
21
21 Declarations t Identifiers should be –Short enough to be reasonable to type (single word is norm) Standard abbreviations are fine (but only standard abbreviations) –Long enough to be understandable When using multiple word identifiers capitalize the first letter of each word
22
22 Declarations t Examples –char response; –int minelement; –float score; –float temperature; –int i; –int n; –char c; –float x;
23
23 Constant Declarations t Types of constants –integer –float –char –bool –string objects t Associate meaningful terms –constfloatPAYRATE = 10.25;
24
24 Hello.cpp // FILE: Hello.cpp // DISPLAYS A USER'S NAME #include using namespace std; int main () {
25
25 Hello.cpp char letter1, letter2; string lastName; // Enter letters and print message. cout << "Enter 2 initials and last name: "; cin >> letter1 >> letter2 >> lastName; cout << "Hello " << letter1 << ". " << letter2 << ". " << lastName << "! "; cout << "We hope you enjoy studying C++." << endl; return 0; }
26
26 Hello.cpp Program output Enter first two initials and last name and press return: EBKoffman Hello E. B. Koffman! We hope you enjoy studying C++.
27
27 2.4 Executable Statements t Memory status –Before and after t Assignments –Form: result = expression; –sizeInSqyards = metersToYards * sizeInMeters; –sum = sum + item;
28
28 Arithmetic Operators t +Addition t - Subtraction t *Multiplication t /Division t % Modulus
29
29 Input / Output Operations t Input –#include library –cin >> sizeInSqmeters; t Extracted from cin (input stream) t >> Directs input to variable t cin associated with keyboard input (stdin) t Used with int, float, char, bool and strings
30
30 Data Types and cin t Don’t mix types with cin int x; cin >> x; Keyboard input 16.6 Value placed in x would be 16
31
31 Other Characteristics of cin t Leading blanks ignored (floats, int, char, bool and strings) t Char read 1 at a time (1 non blank) t Case issues t int or float will read until space t Stings same as int and float
32
32 General Form for cin Form: cin >> dataVariable; cin >> age >> firstInitial;
33
33 Program Output t Output stream cout t << Output operator (insertion operator) –cout << “my height in inches is: “ << height; t Blank lines –endl; or “\n”; Form:cout << dataVariable;
34
34 2.5 General Form of a C++ Program t General program form –Function basic unit (collection of related statements) –A C++ program must contain a main function void main () –int - function returns integer value –main - lower case with () –{ } - Braces define the function body
35
35 General Form of a C++ Program t General form of function body parts –Declaration statements Variables and constants –Executable statements C++ statements
36
36 General Form of a C++ Program t General form // File: filename // Program description: #include directives int main() { Declarations section Executable statements section }
37
37 General Form // Name: Mike Hudock // Date: March 10, 2000 // Files: file1.cpp file2.cpp // Changes : // Program description:
38
38 General Form t Use comments throughout code to highlight points of interest t Strange identifiers t Function explanations t Algorithm definitions
39
39 2.6 Arithmetic Expressions t int data type –+ - * /, Assignment, input and output on int –% Only used with int t Examples of integer division 15 / 3 = 5 15 / 2 = 7 0 / 15 = 0 15 / 0 undefined
40
40 Modulus and Integer t Used only with integer and yields remainder t Examples of integer modulus 7 % 2 = 1 299 % 100 = 99 49 % 5 = 4 15 % 0 undefined
41
41 Mixed-type Assignments t Expression evaluated t Result stored in the variable on the left side t C++ can mix types float a, b, x; int m, n; a=10; b=5; x = m / n;
42
42 Expressions With Multiple Operators t Operator precedence tells how to evaluate expressions t Standard precedence order –()Evaluated first, if nested innermost done first –* / %Evaluated second. If there are several, then evaluate from left-to-right –+ -Evaluate third. If there are several, then evaluate from left-to-right
43
43 Mathematical Formulas in C++ t a = bc not valid C++ syntax –* Operatora = b * c; t m = y - b x - a –( ) And /m = (y - b) / (x - a);
44
44 Coin Collection Case Study t Problem statement –Saving nickels and pennies and want to exchange these coins at the bank so need to know the value of coins in dollars and cents. t Analysis –Count of nickels and pennies in total –Determine total value –Use integer division to get dollar value / 100
45
45 Coin Collection Case Study t Analysis (cont) –Use modulus % to get cents value –% 100 t Design –Prompt for name –Get count of nickels and pennies –Compute total value –Calculate dollars and cents –Display results
46
46 Coin Collection Case Study t Implementation –Write C++ code of design –Verify correct data types needed –Mixed mode types and promotion t Testing –Test results using various input combinations
47
47 Coins.cpp // File: coins.cpp // Determines the value of a coin collection #include using namespace std; int main() {
48
48 Coins.cpp // Local data... string name; int pennies; int nickels; int dollars; int change; int totalCents; // Prompt sister for name. cout << "Enter your first name: "; cin >> name;
49
49 Coins.cpp // Read in the count of nickels and pennies. cout << "Enter the number of nickels: "; cin >> nickels; cout << "Enter the number of pennies: "; cin >> pennies; // Compute the total value in cents. totalCents = 5 * nickels + pennies; // Find the value in dollars and change. dollars = totalCents / 100; change = totalCents % 100;
50
50 Coins.cpp // Display the value in dollars and change. cout << "Good work " << name << '!' << endl; cout << "Your collection is worth " << dollars << " dollars and " << change << " cents." << endl; return 0; }
51
51 Coins.cpp Program output Enter your first name and press return: Sally Enter number of nickels and press return: 30 Enter number of pennies and press return: 77 Good work sally! Your collection is worth 2 dollars and 27 cents.
52
52 2.7 Interactive Mode, Batch and Data Files t Two modes interactive or batch –Keyboard input interactive t Batch mode data provided prior to start –File as input t Input / output redirection –Direct input to program use ‘<‘ symbol –Direct output to a file use ‘>‘ symbol
53
53 Input / Output Redirection t Program name < datafile Metric < mydata
54
54 Input / Output Redirection t Program name > outFile Metric > outFile t Input and output redirection Metric outFile
55
55 Milesbatch.cpp // File: milesBatch.cpp // Converts distance in miles to kilometers. #include using namespace std; int main() // start of main function { const float KM_PER_MILE = 1.609; float miles, kms;
56
56 Milesbatch.cpp // Get the distance in miles. cin >> miles; cout << "The distance in miles is " << miles << endl; // Convert the distance to kilometers. kms = KM_PER_MILE * miles; // Display the distance in kilometers. cout << "The distance in kilometers is " << kms << endl; return 0; }
57
57 Milesbatch.cpp Program output The distance in miles is 10 The distance in kilometers is 16.09
58
58 2.8 Common Programming Errors t Syntax –Programs rarely compile –Something always goes wrong –Systematic solutions t Compiler not descriptive –Look at line number before and after error –Watch missing ; and }
59
59 Common Programming Errors t Run-time errors –Illegal operation (divide by 0) –Test.cpp is example t Logic errors –Program functions differently than you expect
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.