Presentation is loading. Please wait.

Presentation is loading. Please wait.

Overview of C++ Chapter 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.

Similar presentations


Presentation on theme: "Overview of C++ Chapter 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."— Presentation transcript:

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


Download ppt "Overview of C++ Chapter 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."

Similar presentations


Ads by Google