Download presentation
Presentation is loading. Please wait.
Published byLeslie Hicks Modified over 8 years ago
1
CHAPTER 2 PROBLEM SOLVING USING C++ 1 C++ Programming PEG200/Saidatul Rahah
2
Objectives Introduction to C++ : Identifier, keyword, mnemonic Programming Style Data Types Arithmetic Operations Variables and Declaration Statements 2 USEG20/Saidatul Rahah
3
Introduction to C++ USEG20/Saidatul Rahah 3 Modular Program: a program consisting of interrelated segments arranged in a logical and understandable form Easier to develop, correct, and modify than other kinds of programs Module: a small segment which is designed to perform a specific task A group of modules is used to construct a modular program
4
Introduction to C++(continued) USEG20/Saidatul Rahah 4 Modules in C++ can be classes or functions: Function: accepts an input and produces an output by processing the input in some fashion A function’s processing is encapsulated and hidden within the function Class: contains both data and functions used to manipulate the data Function: encapsulates a set of operations, while a class encapsulates data plus one or more sets of operations
5
Introduction to C++: Identifier USEG20/Saidatul Rahah 5 Identifier: a name given to an element of the language, such as a class or function Rules for forming identifier names: First character must be a letter or underscore Only letters, digits, or underscores may follow the initial letter (no blanks allowed) Keywords cannot be used as identifiers Max length of an identifier = 1024 characters Use underscores to separate multiple words in a name, or capitalize the first letter of each word.
6
Introduction to C++: Keyword USEG20/Saidatul Rahah 6 Keyword: a reserved name that represents a built-in object or function of the language
7
Introduction to C++: Identifier (continued) USEG20/Saidatul Rahah 7 Identify valid C++ identifiers below: degToRad 1AB3 addNums while slope findMax E*6 valid invalid begins with a number invalid contains a special character invalid this is a keyword
8
Introduction to C++: Mnemonic USEG20/Saidatul Rahah 8 Function names Require a set of parentheses at the end Can use mixed upper and lower case Should be meaningful, or be a mnemonic Mnemonic: a word designed as a memory aid Examples of function names: areaCircle()calAverage()main() Note that C++ is a case-sensitive language!
9
Introduction to C++: The main() Function USEG20/Saidatul Rahah 9 Overall structure of a C++ program contains one function named main(), called the driver function All other functions are invoked from main() Each statement inside the function must be terminated with a semicolon return : a keyword causing the appropriate value to be returned from the function return 0 in the main() function causes the program to end
10
Introduction to C++: The main() Function (continued) USEG20/Saidatul Rahah 10 The structure of a main() function.
11
Introduction to C++: The cout Object USEG20/Saidatul Rahah 11 cout object: an output object that sends data to a standard output display device
12
Objectives Introduction to C++ : Identifier, keyword, mnemonic Programming Style Data Types Arithmetic Operations Variables and Declaration Statements 12 USEG20/Saidatul Rahah
13
Programming Style USEG20/Saidatul Rahah 13 Although more than one C++ statement can be on a single line, good style calls for one statement per line Opening and closing braces {} for the function body should each be on separate lines Statements in the function body should be indented
14
Programming Style: Comments USEG20/Saidatul Rahah 14 Comments: explanatory remarks in the source code added by the programmer Line comment: begins with // and continues to the end of the line Line comment can be on a line by itself, or at the end of a line of code Line comment cannot be longer than one line Block Comment: a comment that spans across two or more lines Block comment begins with /* and ends with */ Example: /* This is a block comment that spans across three lines */
15
Programming Style: Comments (continued) USEG20/Saidatul Rahah 15
16
Objectives Introduction to C++ : Identifier, keyword, mnemonic Programming Style Data Types Arithmetic Operations Variables and Declaration Statements 16 USEG20/Saidatul Rahah
17
Data Types USEG20/Saidatul Rahah 17 Data type: a set of values and the operations that can be applied to these values Two fundamental C++ data groupings: – Class data type (a class): created by the programmer – Built-in data type (primitive type): part of the C++ compiler
18
Data Types (continued) USEG20/Saidatul Rahah 18 Numerical Data Types Built-in data types Integer Types Floating- PointTypes
19
Data Types: Integer USEG20/Saidatul Rahah 19
20
Data Types: Integer (continued) USEG20/Saidatul Rahah 20 int data type: whole numbers, optionally with + or – sign Example: 2 char data type: individual character; any letter, digit, or special character enclosed in single quotes Example: ‘A’ Character values are usually stored in ASCII code
21
Data Types: Integer (continued) USEG20/Saidatul Rahah 21
22
Data Types: Integer (continued) USEG20/Saidatul Rahah 22 Escape character: the backslash, \; indicates an escape sequence Escape sequence: tells compiler to treat the following characters as special instruction codes
23
USEG20/Saidatul Rahah 23 Refer Table 2.4: Escape Character. p54
24
Data Types: Integer (continued) USEG20/Saidatul Rahah 24 bool data type: represents Boolean (logical) data; restricted to two values: true or false sizeof operator: shows the number of bytes used to store values of any data type Values returned by sizeof are compiler dependent
25
Data Types: Integer (continued) USEG20/Saidatul Rahah 25
26
Data Types: Integer (continued) USEG20/Saidatul Rahah 26 Signed data type: one that permits negative, positive, and zero values Unsigned data type: permits only positive and zero values An unsigned data type provides essentially double the range of its signed counterpart
27
Data Types: Integer (continued) USEG20/Saidatul Rahah 27
28
Data Types: Floating-Point Types USEG20/Saidatul Rahah 28 Floating-point number (real number): zero or any positive or negative number containing a decimal point Examples: +10.6255.-6.2 No special characters are allowed Three floating-point data types in C++: float (single precision) double (double precision) long double
29
Data Types: Floating-Point Types (continued) USEG20/Saidatul Rahah 29
30
Objectives Introduction to C++ : Identifier, keyword, mnemonic Programming Style Data Types Arithmetic Operations Variables and Declaration Statements 30 USEG20/Saidatul Rahah
31
Arithmetic Operations USEG20/Saidatul Rahah 31 Arithmetic operators are binary operators Binary operators: require two operands Different data types can be used in the same arithmetic expression
32
Arithmetic Operations: Expression Types USEG20/Saidatul Rahah 32 Expression: any combination of operators and operands that can be evaluated to yield a value Mixed-mode expression: contains integer and floating- point operands; yields a double-precision value 15 + 5 = 20 operator operands
33
Arithmetic Operations : Summary of Operators USEG20/Saidatul Rahah 33
34
Arithmetic Operations (continued) USEG20/Saidatul Rahah 34 Integer Data Type 7 + 3 = 10 7 – 3 = 4 7 * 3 = 21 7 / 3 = 2 7 % 3 = 1 Floating Point Data Type 7.0 + 3.0 = 10.0 7.0– 3.0 = 4.0 7.0 * 3.0 = 21.0 7.0 / 3.0 = 2.33 If both operands are integer data type, output will be INTEGER If ONE operand is floating point data Type, output will be FLOATING POINT
35
Arithmetic Operations: Operator Precedence & Associativity USEG20/Saidatul Rahah 35 Rules for writing arithmetic expressions: Never place two consecutive binary arithmetic operators side by side Use parentheses to form groupings; contents within parentheses are evaluated first You may nest parentheses within other parentheses; evaluated from innermost to outermost Use the * operator for multiplication, not parentheses
36
Arithmetic Operations: Operator Precedence & Associativity (continued) USEG20/Saidatul Rahah 36 Expressions with multiple operators are evaluated by precedence of operators Associativity: the order in which operators of the same precedence are evaluated
37
Arithmetic Operations: Operator Precedence & Associativity (continued) USEG20/Saidatul Rahah 37 Example: 8 + 5 * 7 % 2 * 4 = 8 + 35 % 2 * 4 = 8 + 1 * 4 = 8 + 5 =12
38
Objectives Introduction to C++ : Identifier, keyword, mnemonic Programming Style Data Types Arithmetic Operations Variables and Declaration Statements 38 USEG20/Saidatul Rahah
39
Variables and Declaration Statements USEG20/Saidatul Rahah 39 Variable: symbolic identifier for a memory address where data can be held Use identifier naming rules for variable names
40
Variables and Declaration Statements (continued) USEG20/Saidatul Rahah 40 Assignment statement: used to store a value into a variable Value of the expression on the right side of the = is assigned to the memory location of the variable on the left side of the = Examples: num1 = 45; num2 = 12; total = num1 + num2; 45 num1
41
Variables and Declaration Statements (continued) USEG20/Saidatul Rahah 41 Declaration statement: specifies the data type and identifier of a variable; sets up the memory location Syntax: ; A variable must be declared before it is used! Data type is any valid C++ data type Example: int sum; int num1, num2, num3; float pi = 3.142; Initialized in declaration
42
Problem Solving USEG20/Saidatul Rahah 42 Write a C++ program to calculate the average of two double-precision numbers. Apply Software Development Procedure: Step 1: Analyze the problem Output - average Inputs - 2 numbers ( num1, num2) Step 2: Develop a solution Assign values to num1 and num2 Calculate and display average Step 3: Code the solution Step 4: Test and correct the program
43
Problem Solving (continued) USEG20/Saidatul Rahah 43 Flowchart: start Input 2 numbers Calculate average Display average end #include int main() { double num1, num2, average; num1 = 45.5; num2 = 10.2; average = (num1+num2)/2; cout<<“Average is: “<<average; return 0; } Variable declaration Assignment statement output
44
Common Programming Errors USEG20/Saidatul Rahah 44 Missing parentheses after main Missing or incorrect braces around function body Misspelling a reserved word Missing ending double quotes on string literal Missing semicolon at end of statement Adding a semicolon at end of #include statement Missing \n to indicate new line Substituting letter O for zero and vice versa
45
Common Programming Errors (continued) USEG20/Saidatul Rahah 45 Failing to declare all variables Storing incorrect data type into a variable Attempting to use a variable with no value Dividing integer values incorrectly Mixing data types in the same expression
46
Short Quiz USEG20/Saidatul Rahah 46 Write down your name, SID no, class name on a piece of paper and answer below question. 1. List 4 rules for forming identifier names. 2. Solve expression given below. 12 + 5 % 2 * 8 – 3 Thank You for Listening…..
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.