360 likes | 466 Views
Chapter 3: Expressions and Interactivity. Outline. cin object Mathematical expressions Type Conversion and Some coding styles. The cin Object. Standard input object Like cout , requires iostream file Used to read input from keyboard. How to use cin ?. SYNTAX
E N D
Chapter 3: Expressions and Interactivity
Outline • cin object • Mathematical expressions • Type Conversion and Some coding styles
The cin Object • Standard input object • Like cout, requires iostream file • Used to read input from keyboard
How to use cin? SYNTAX These examples yield the same result. cin >> length ; cin >> width ; or cin >> length >> width ; cin >> Variable >> Variable .. . ;
The cin Object • Information retrieved from cin with >> (the extraction operator) • operator >> attempts to extractthe next item from the input stream and store its value in the right operand variable • Input is stored in one or more variables
Displaying a Prompt • A prompt is a message that instructs the user to enter data. • You should alwaysusecoutto display a prompt before each cin statement.cout << "How tall is the room? ";cin >> height;
The cin Object • Can be used to input more than one value: cin >> height >> width; • Multiple values from keyboard must be separated by spaces • Order is important: first value entered goes to first variable, etc.
Outline • cin object • Mathematical expressions • Type Conversion and Some coding styles
Mathematical Expressions • Can create complex expressions using multiple mathematical operators • An expression can be a literal, a variable, or a mathematical combination of constants and variables
Mathematical Expressions • Can be used in assignment, cout, other statements: area = 2 * PI * radius; cout << "border is: " << 2*(l+w);
Some C++ operators PrecedenceOperator Description Higher + Positive - Negative ----------------------------------------------------------- * Multiplication / Division % Modulus ------------------------------------------------------------ + Addition - Subtraction ------------------------------------------------------------- Lower = Assignment
Example 7 * 10 - 5 % 3 * 4 + 9 means (7 * 10) - 5 % 3 * 4 + 9 70 - 5 % 3 * 4 + 9 70 - (5 % 3) * 4 + 9 70 - 2 * 4 + 9 70 - ( 2 * 4 ) + 9 70 - 8 + 9 ( 70 - 8 ) + 9 62 + 9 71
Parentheses • Parentheses can be used to change the usual order; expressions inside ( ) are evaluated first • evaluate (7 * (10 - 5) % 3) * 4 + 9 ( 7 * 5 % 3 ) * 4 + 9 ( 35 % 3 ) * 4 + 9 2 * 4 + 9 8 + 9 17
Algebraic Expressions • Multiplication requires an operator: Area=lw is written as Area = l * w; • Parentheses may be needed to maintain order of operations: is written as m = (y2-y1) /(x2-x1);
When calculation average • Average = a + b + c / 3.0; (Wrong!!!) • Average = (a + b + c) / 3.0; (Correct!!!)
y = 3 * x /2; A = (3*x+2)/(4*a-1); d = b*b -4*a*c; Algebra and C++ expressions
Outline • cin object • Mathematical expressions • Type Conversion and Some coding styles
When You Mix Apples and Oranges: Type Conversion • Operations are performed between operands of the same type. • If not of the same type, C++ will convert one to be the type of the other • This can impact the results of calculations.
Example • double parts; • parts = 15/6; //parts=2 • double parts; • parts = 15.0/6; //parts=2.5
Assignment operator = Variable = Expression; The Expression on right is evaluated first. Then the resulting value is stored in the memory location of Variable on left. NOTE: An automatic type coercion occurs after evaluation but before the value is stored if the types differ for Expression and Variable
Named (Symbolic) Constants • Named constant (constant variable): variable whose content cannot be changed during program execution • Often named in uppercase letters • Used for representing constant values with descriptive names: const double TAX_RATE = 0.0675; constint NUM_STATES = 50;
value is 5 value is 5 value is 5 Multiple Assignment and Combined Assignment • The = can be used to assign a value to multiple variables: x = y = z = 5; • Value of = is the value that is assigned • Associates right to left: x = (y = (z = 5));
Combined Assignment • Look at the following statement: sum = sum + 1; This adds 1 to the variable sum.
Other Similar Statements Slide 3- 31
Combined Assignment • The combined assignment operators provide a shorthand for these types of statements. • The statement sum = sum + 1; is equivalent to sum += 1;
Combined Assignment Operators Slide 3- 34
Mathematical Library Functions • #include <cmath> • Commonly used functions: • where n can be an integer, double, float. Slide 3- 35
Mathematical Library Functions • In order to user the functions you need to know: • name of the function you need • what the function does (input/output) • input parameter and the data type of parameter • data type of returned value • Syntax: value = function_name (argument); Slide 3- 36
Mathematical Library Functions • Examples: sqrt_value = sqrt(49); //Result is 7 abs_value = abs(-34.5); //Result is 34.5 power_value = pow(2.1,3); //Result is 9.261 cosine_value = cos(3.1415196/6); //Result is 0.866 (cos 30) Slide 3- 37