Programming Fundamentals

53
Programming Fundamentals

description

Programming Fundamentals. The setw Manipulator. setw changes the field width of output. The setw manipulator causes the number (or string) that follows it in the stream to be printed within a field n characters wide, where n is the argument to setw(n). - PowerPoint PPT Presentation

Transcript of Programming Fundamentals

ProgrammingFundamentals

The setw Manipulator setw changes the field width of output.

The setw manipulator causes the number (or string) that follows it in the stream to be printed within a field n characters wide, where n is the argument to setw(n).

The value is right justified within the field.

OUTPUT

Example code

OUTPUT

Field width and setwN a m e : M a d i h a L i a q a t

R e g # : 0 9 - S E - 9 9

N a m e : M a d i h a L i a q t

R e g # : 0 9 - S E - 9 9

Without setw manipulator

OUTPUT

Variable Type Summary

Unsigned Data Types

Type Conversion

Automatic Conversions

Automatic Conversions When two operands of different types are

encountered in the same expression, the lower-type variable is converted to the type of the higher-type variable.

Automatic Conversions

In our example, the int value of count is converted to type float and stored in a temporary variable before being multiplied by the float variable avgWeight.

The result (still of type float) is then converted to double so that it can be assigned to the double variable totalWeight.

Process of coversion 4 bytes

These conversions take place invisibly

Casts In C++ Cast applies to data conversions

specified by the programmer, as opposed to the automatic data conversions.

Casts are also called type casts. What are casts for?

Casts Sometimes a programmer needs to convert

a value from one type to another in a situation where the compiler will not do it automatically or without complaining.

We have four specific casting operators: dynamic_cast <new_type> (expression)

reinterpret_cast <new_type> (expression)static_cast <new_type> (expression)const_cast <new_type> (expression)

Example

The Remainder Operator This operator (also called the modulus

operator) finds the remainder when one number is divided by another.

Arithmetic Assignment Operators

Increment Operators The ++ operator increments (adds 1 to) its

argument. Normal way:

Using arithmetic assignment operator

Using Increment operator

Prefix and Postfix the increment operator can be used in two

ways: Prefix

meaning that the operator precedes the variable Postfix

meaning that the operator follows the variable Example

See next slide

The Decrement (--) Operator The decrement operator, --, behaves very

much like the increment operator, except that it subtracts 1 from its operand.

It too can be used in both prefix and postfix forms.

Example count-- --count

Relational Operators A relational operator compares two values. The values can be any built-in C++ data type, such

as char, int, and float or they can be user-defined classes.

The comparison involves such relationships as equal to, less than, and greater than.

The result of the comparison is true or false; for example, either two values are equal (true), or they’re not (false).

Complete list of C++ relational operators

Example

OUTPUT

Example Expressions

Loops Loops cause a section of your program to be

repeated a certain number of times. The repetition continues while a condition is

true a certain number of times. When the condition becomes false, the loop ends

and control passes to the statements following the loop.

Kinds of Loop There are three kinds of loops in C++:

for loop, while loop, do loop.

The for Loop The for loop executes a section of code a

fixed number of times. It’s usually (although not always) used when

you know, before entering the loop, how many times you want to execute the code.

Example

OUTPUT

Example

OUTPUT

How does this work?

Explanations The for statement controls the loop. It consists of the keyword for, followed by

parentheses that contain three expressions separated by semicolons:

These three expressions are the initialization expression, the test expression, and the increment expression.

These three expressions usually (but not always) involve the same variable, which we call the loop variable.

Explanation The body of the loop is the code to be

executed each time through the loop. In our example the loop body consists of a

single statement:

Contdd. . . . This statement prints out the square of j,

followed by two spaces. The square is found by multiplying j by

itself. As the loop executes, j goes through the

sequence 0, 1, 2, 3, and so on up to 14; so the squares of these numbers are displayed—0, 1, 4, 9, up to 196.

The Initialization Expression The initialization expression is executed

only once, when the loop first starts. It gives the loop variable an initial value.

In our example it sets j to 0.

The Test Expression The test expression usually involves a relational

operator. It is evaluated each time through the loop, just

before the body of the loop is executed. It determines whether the loop will be executed

again. If the test expression is true, the loop is executed

one more time. If it’s false, then loop ends, and control passes to the

statements following the loop.

Contdd. . . . In our example the statement

is executed following the completion of the loop.

Increment /Decrement Expression The increment expression changes the value of

the loop variable, often by incrementing it. It is always executed at the end of the loop, after

the loop body has been executed. How Many Times?

In the figure shown in previous slides, The first time j=0, This is ensured in the initialization

expression. The last time through the loop, j is 14. This is

determined by the test expression j<15.

Contdd. . . . When j becomes 15, the loop terminates; the loop

body is not executed when j has this value. Next slide shows a flow chart for loop operation. The arrangement shown is commonly used to do something a fixed number of times:

start at 0, use a test expression with the less-than operator and a

value equal to the desired number of iterations increment the loop variable after each iteration.

Another for loop example for(count=0; count<100; count++) What are your comments about this example?

Multiple Statements in the Loop Body We want to execute more than one statement

in the loop body. Multiple statements are delimited by braces.

Note : there is no semicolon following the final brace of the loop body, although there are semicolons following the individual statements in the loop body.

Questions????