loops c++

40
LOOPS Shivani Singh XI A

Upload: shivani-singh

Post on 09-Aug-2015

107 views

Category:

Education


1 download

TRANSCRIPT

Page 1: Loops c++

LOOPS

Shivani Singh

XI A

Page 2: Loops c++

CONTENTS

1. Loop Statements

2. Parts of a loop

3. Types of Loops While Loop For Loop Do-while Loop

4. Nested Loops

5. Jump Statements

6. Exercises

Page 3: Loops c++

The loop statements allow a set of instructions to be performed repeatedly until a certain condition is fulfilled. Following is the general from of a loop statement in most of the programming languages:

LOOP STATEMENTS

Page 4: Loops c++

PARTS OF A LOOP

• Initialization Expression(s) initialize(s) the loop variables in the beginning of the loop.

• Test Expression decides whether the loop will be executed (if test expression is true) or not (if test expression is false).

• Update Expression(s) update(s) the values of loop variables after every iteration of the loop.

• The Body-of-the-Loop contains statements to be executed repeatedly.

Page 5: Loops c++

TYPES OF LOOPS

Loop Type Description

while loop Repeats a statement or group of statements until a given condition is true. It tests the condition before executing the loop body.

for loop Execute a sequence of statements multiple times and abbreviates the code that manages the loop variable.

do...while loop Like a while statement, except that it tests the condition at the end of the loop body

nested loops You can use one or more loop inside any another while, for or do..while loop.

C++ programming language provides following types of loop to handle looping requirements:

Page 6: Loops c++

WHILE LOOP• The syntax of while statement :

while (loop repetition condition)statement

• Loop repetition condition is the condition which controls the loop.

• The statement is repeated as long as the loop repetition condition is true.

• A loop is called an infinite loop if the loop repetition condition is always true.

Page 7: Loops c++
Page 8: Loops c++

Logic of a while Loop

statement

true false

conditionevaluated

Page 9: Loops c++

EXAMPLE:

#include<iostream.h>#include <stdio.h>int main(void){      int j;      j = -5;      // while loop      while(j <= 0)      {            printf("%d ", j);            j = j + 1;      }      return 0;}

Page 10: Loops c++

FOR LOOP

A for statement has the following syntax:

for ( initialization ; condition ; increment ){ statement;}

The initializationis executed once

before the loop begins

The statement isexecuted until the

condition becomes false

The increment portion is executed at the end of each

iteration

Page 11: Loops c++
Page 12: Loops c++

Logic of a for loop

statement

true

conditionevaluated

false

increment

initialization

Page 13: Loops c++

EXAMPLE://program to display table of a given number using for loop.#include<iostream.h>void main(){int n;cout<<“\n Enter number:”;cin>>n;//for loop for(int i=1;i<11;++i) cout<<“\n”<<n<<“*”<<i<<“=“<<n*i;}

Enter number: 33*1=33*2=63*3=93*4=123*5=153*6=183*7=213*8=243*9=273*10=30

OUTPUT

Page 14: Loops c++

THE FOR LOOP VARIATIONS

Multiple initialization and update expressionsA for loop may contain multiple initialization and/or multiple update expressions. These multiple expressions must be separated by commas.e.g.

for( i=1, sum=0; i<=n; sum+=i, ++i)cout<<“\n”<<i;

Page 15: Loops c++

Prefer prefix increment/decrement over postfix when to be used alone.

for( i=1;i<n;++i):

rather than,

for( i=1;i<5;i++):

Reason being that when used alone ,prefix operators are faster executed than postfix.

Prefer this over this

Page 16: Loops c++

Infinite loopAn infinite loop can be created by omitting the test expression as shown:

for(j=25; ;--j)cout<<“an infinite for loop”;

An infinite loop can also be created as:for( ; ; )cout<<“endless for loop”;

Page 17: Loops c++

Empty loopIf a loop does not contain any statement in its loop-body, it is said to be an empty loop:for(j=25; (j) ;--j) //(j) tests for non zero value of j.

If we put a semicolon after for’s parenthesis it repeats only for counting the control variable. And if we put a block of statements after such a loop, it is not a part of for loop.

e.g. for(i=0;i<10;++i);{

cout<<“i=“<<i<<endl;}

The semicolon ends the loop here only

This is not the body of the for loop. For loop is

an empty loop

Page 18: Loops c++

DO…WHILE LOOP

• The syntax of do-while statement in C:dostatement

while (loop repetition condition);• The statement is first executed.• If the loop repetition condition is true, the

statement is repeated.• Otherwise, the loop is exited.

Page 19: Loops c++

Logic of a do…while loop

true

conditionevaluated

statement

false

Page 20: Loops c++

EXAMPLE:

//program to display counting from 1 to 10 using do-while loop.#include<iostream.h>void main(){int i=1; //do-while loop do{cout<<“\n”<<i;i++;}while(i<=10);}

12345678910

OUTPUT

Page 21: Loops c++

NESTED LOOPS• Nested loops consist of an outer loop with one

or more inner loops. e.g.,

for (i=1;i<=100;i++){for(j=1;j<=50;j++){

…}

}• The above loop will run for 100*50 iterations.

Inner loop

Outer loop

Page 22: Loops c++

EXAMPLE://program to display a pattern of a given character using nested loop.#include<iostream.h>void main(){int i,j; for( i=1;i<5;++i) {cout<<“\n”;for(j=1;j<=i;++j)cout<<“*”;}}

** ** * ** * * *

OUTPUT

Page 23: Loops c++

JUMP STATEMENTS

1. The goto statement• A goto statement can transfer the program control

anywhere in the program.• The target destination is marked by a label.• The target label and goto must appear in the same

statement.• The syntax of goto statement is:

goto label;…label:

Page 24: Loops c++

2. The break statement• The break statement enables a program to

skip over part of the code.• A break statement terminates the smallest

enclosing while, do-while and for statements.• A break statement skips the rest of the loop

and jumps over to the statement following the loop.

The following figures explains the working of a break statement :

Page 25: Loops c++

for(initialize;test expression;update){

statement1; if(val>2000)

break; :

statement2;}

statement3;

WORKING OF BREAK STATEMENT IN FOR LOOP

Page 26: Loops c++

while(test expression) {

statement1; if(val>2000) break;

: statement2;

} statement3;

WORKING OF BREAK STATEMENT IN WHILE LOOP

Page 27: Loops c++

do{

statement1; if(val>2000)

break; :

statement2;} while(test expression)statement3;

WORKING OF BREAK STATEMENT IN DO-WHILE LOOP

Page 28: Loops c++

3. The continue statement• The continue statement works somewhat like the

break statement. • For the for loop, continue causes the conditional

test and increment portions of the loop to execute. For the while and do...while loops, program control passes to the conditional tests.

• Syntax: The syntax of a continue statement in C++ is:

continue;

Page 29: Loops c++

EXERCISES:• MULTIPLE CHOICE QUESTIONS (M

CQs)

• PROGRAM BASED QUESTIONS

Page 30: Loops c++

MCQs...

Page 31: Loops c++

1. The statement i++; is equivalent to [a] i = i + i; [b] i = i + 1; [c] i = i - 1; [d] i --;

NEXT QUESTION

ANS: [b]

Page 32: Loops c++

2. What's wrong? for (int k = 2, k <=12, k++) [a] the increment should always be ++k [b] the variable must always be the letter i

when using a for loop [c] there should be a semicolon at the end of

the statement [d] the commas should be semicolons

NEXT QUESTION

ANS: [d]

Page 33: Loops c++

3. Which looping process checks the test condition at the end of the loop? [a] for [b] while [c] do-while [d] no looping process checks the test condition at the end

NEXT QUESTION

ANS: [c]

Page 34: Loops c++

4. Which looping process is best used when the number of iterations is known? [a] for [b] while [c] do-while [d] all looping processes require that the iterations be known

NEXT QUESTION

ANS: [a]

Page 35: Loops c++

5. A continue statement causes execution to skip to [a] the return 0; statement [b] the first statement after the loop [c] the statement following the continue statement [d] the next iteration of the loop

ANS: [d]

Page 36: Loops c++

PROGRAM BASED QUESTIONS…

Page 37: Loops c++

1. Write a program to print first n natural numbers and their sum.

2. Write a program to calculate the factorial of an integer.

3. Write a program that prints 1 2 4 8 16 32 64 128.4. Write a program to check whether the given number

is palindrome or not.5. Write a program to generate divisors of an integer.6. Write a program to find whether a given number is

odd or even. The program should continue as long as the user wants.

7. Write a program to print Fibonacci series i.e.,0 1 1 2 3 5 8….

Page 38: Loops c++

8. Write a program to print largest even and largest odd number from a list of numbers entered. The list terminates as soon as one enters 0(zero).

9. Write a program to check whether the entered number is Armstrong or not.

10. Write a program to display Pythagorean triplets up to 100.

11. Write a program to calculate average of 10 numbers.12. Write programs to produce the following designs:a) A

A BA B CA B C DA B C D E

Page 39: Loops c++

b) & & & & & & && & & & &

& & &&

c) && &

& && &

& & & & & & & &&

Page 40: Loops c++

THANK YOU