Difference between revisions of "C-and-C++/C3/Loops/English"

From Script | Spoken-Tutorial
Jump to: navigation, search
Line 411: Line 411:
 
I have already made the program.
 
I have already made the program.
  
So lets take a look at it.
+
The logic and implementation are same as in our C program.
 +
There are a few changes
  
 
|-
 
|-
 
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.035cm;padding-right:0.035cm;"| Point the cursor at '''loops1.cpp'''
 
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.035cm;padding-right:0.035cm;"| Point the cursor at '''loops1.cpp'''
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| Please note that I have saved the file with the name '''loops1.cpp'''
+
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| like the header file as iostream in place of stdio.h
 +
We have included the using statement here. Using namespace std;
  
 
|-
 
|-
Line 421: Line 423:
  
 
'''<nowiki>#include<iostream></nowiki>'''
 
'''<nowiki>#include<iostream></nowiki>'''
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| This is our '''header file iostream.'''
+
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| And here we have used cout function in place of printf function
  
 
|-
 
|-
Line 431: Line 433:
 
|-
 
|-
 
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.035cm;padding-right:0.035cm;"| Highlight '''int main()'''
 
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.035cm;padding-right:0.035cm;"| Highlight '''int main()'''
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| This is the '''main '''function.
+
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| The structure of while loop is same as in our C program.
  
 
|-
 
|-
Line 439: Line 441:
  
 
'''int y=0;'''
 
'''int y=0;'''
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| Here the variables x and y are declared and initialized to 0.
+
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"|Let us execute the program.
 +
 
 +
Come back to our terminal.
  
 
|-
 
|-
Line 453: Line 457:
  
 
'''}'''
 
'''}'''
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| The '''structure of the while loop''' is the same for '''C++''' as in '''C'''
+
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| type g++ while.cpp -o while1
  
 +
'''Press Enter'''
 +
 +
type ./while1
 +
'''Press Enter'''
 +
 +
 +
We can see that the output is similar to our while program in C.
 
|-
 
|-
 
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.035cm;padding-right:0.035cm;"| Highlight the commented '''do….while''' loop
 
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.035cm;padding-right:0.035cm;"| Highlight the commented '''do….while''' loop
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| The '''do….while''' loop is already commented
+
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| Now let us see the '''do….while''' program in C++
 +
Come back to our text editor.
  
 
|-
 
|-
Line 465: Line 477:
 
|-
 
|-
 
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.035cm;padding-right:0.035cm;"| Highlight '''return 0;'''
 
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.035cm;padding-right:0.035cm;"| Highlight '''return 0;'''
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| This is the '''return''' statement.
+
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| Here also there are similar changes like the header file, the using statement and the cout function.
  
 
|-
 
|-
 
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.035cm;padding-right:0.035cm;"| Click on '''Save'''
 
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.035cm;padding-right:0.035cm;"| Click on '''Save'''
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| Now click on '''Save.'''
+
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"|Rest of the things are similar.
 +
Let us execute the program.
 +
Come back to our terminal.
  
 
|-
 
|-
 
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.035cm;padding-right:0.035cm;"| On the terminal
 
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.035cm;padding-right:0.035cm;"| On the terminal
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| Let us compile
+
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"|type g++ do-while.cpp -o do1
 +
'''Press Enter'''
  
Come back to the terminal
+
type
 +
./do1
 +
'''Press Enter'''
  
|-
+
We can see that the output is similar to our do-while program in C.
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.035cm;padding-right:0.035cm;"| Type
+
 
+
'''g++ loops1.cpp -o loop1'''
+
 
+
Type
+
 
+
'''./loop1'''
+
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| Type
+
 
+
'''g++ loops1.cpp -o loop1'''
+
 
+
press''' Enter'''
+
 
+
To execute
+
 
+
Type
+
 
+
'''./loop1'''
+
  
 
|-
 
|-
Line 501: Line 500:
  
 
'''Output'''
 
'''Output'''
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| Here the output is displayed as
+
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| Now we will see some common errors and their solutions.
  
'''55'''
 
  
 
|-
 
|-
 
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.035cm;padding-right:0.035cm;"| Switch to the editor
 
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.035cm;padding-right:0.035cm;"| Switch to the editor
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| Now let us see the do….while loop
+
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"|  
  
Go back to the editor
+
Come back to our text editor.
  
 
|-
 
|-
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.035cm;padding-right:0.035cm;"| Uncomment '''do….while loop''' and comment '''while loop'''
+
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.035cm;padding-right:0.035cm;"| '''int x=0;'''
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| Let us uncomment the '''do….while loop''' and comment the '''while loop'''
+
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| Now we look at the while loop.
  
|-
+
Suppose here I will not increment the value of x.
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.035cm;padding-right:0.035cm;"| Highlight do….while loop
+
Click on Save.
 +
Come back to our terminal.
  
'''do'''
 
 
'''{y+=x;'''
 
 
'''x++;}'''
 
 
'''<nowiki>while(x<=10);</nowiki>'''
 
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| The '''structure of the while loop''' is the same for '''C++''' as in '''C'''.
 
  
 
|-
 
|-
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.035cm;padding-right:0.035cm;"| '''Highlight'''
+
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.035cm;padding-right:0.035cm;"| '''Switch to the terminal'''
 
+
'''<nowiki>cout<<y<<”\n”;</nowiki>'''
+
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| Here we print the value of '''y.'''
+
 
+
|-
+
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.035cm;padding-right:0.035cm;"| Click on '''Save'''
+
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| Now Click on '''Save.'''
+
 
+
|-
+
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.035cm;padding-right:0.035cm;"| '''Switch to terminal '''
+
  
 
'''Compile and execute'''
 
'''Compile and execute'''
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| Come back to the terminal
+
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| Let us execute the program again.
  
Let us compile and execute as before.
+
Press the up arrow key
  
|-
+
Again press the up-arrow key.
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.035cm;padding-right:0.035cm;"| Highlight''' 55'''
+
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| Here the output is displayed as
+
  
'''55'''
 
  
 
|-
 
|-
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.035cm;padding-right:0.035cm;"| '''Error 1'''
+
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.035cm;padding-right:0.035cm;"| Highlight '''error'''
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| Now let us see some of the common errors which we can come across.
+
  
We switch to the editor and open '''loops1.cpp'''
+
Highlight '''Line no.8'''
  
|-
+
Highlight '''loops1.cpp'''
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.035cm;padding-right:0.035cm;"| '''int x=0;'''
+
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| Now we look at the while loop.
+
  
Suppose we do not declare the variable x outside the while loop.
+
Highlight '''x undeclared'''
 +
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| The output is displayed.
  
I will remove int x=0; from line no.6
+
We can see anumber of zeros.
  
And add it inside the while loop after line no.9
+
This is because the loop does not have a terminating condition. It is known as infinite loop.
  
I will retain rest of the code as it is.
+
Infinite loop can cause the system to become unresponsive.
  
Save the program
+
It causes the program to consume all the processes time.
  
|-
+
But it can be temrinated.
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.035cm;padding-right:0.035cm;"| '''Switch to the terminal'''
+
 
+
'''Compile and execute'''
+
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| Let us go to the terminal, compile and execute the program again.
+
 
+
|-
+
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.035cm;padding-right:0.035cm;"| Highlight '''error'''
+
 
+
Highlight '''Line no.8'''
+
 
+
Highlight '''loops1.cpp'''
+
 
+
Highlight '''x undeclared'''
+
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| We see that there is an error at line no.8 in our '''loops1.cpp file'''
+
 
+
Variable '''x''' undeclared.
+
  
 
|-
 
|-
Line 599: Line 559:
 
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| Come back to our program
 
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| Come back to our program
  
x should not be declared inside the loop.
+
Let us fix the error
  
Remove '''int x=0;''' from line no.10.
+
type x++ and a semicolon.
  
Rewrite it outside the loop at line no.6 as before
+
Click on Save
  
Click on '''Save'''
+
Let us execute again.
  
 
|-
 
|-
Line 611: Line 571:
  
 
'''Compile and execute'''
 
'''Compile and execute'''
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| Let us go back to the terminal
+
| style="border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.035cm;"| Come back to the terminal
 +
 
 +
Press the up-arrow key.
 +
 
 +
Yes it is working.
  
Compile and execute the program.
 
  
|-
 
| style="background-color:transparent;border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0cm;"|
 
| style="background-color:transparent;border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0cm;"| Yes, it’s working.
 
  
Let us get back to our slides.
 
  
 
|-
 
|-
 
| style="background-color:transparent;border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0cm;"|  
 
| style="background-color:transparent;border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0cm;"|  
 
| style="background-color:transparent;border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0cm;"| This brings us to the end of tutorial on loops.
 
| style="background-color:transparent;border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0cm;"| This brings us to the end of tutorial on loops.
 +
 +
Let us get back to our slides.
 +
 +
We will move back to our slides.
  
 
|-
 
|-
Line 629: Line 592:
  
 
Summary
 
Summary
| style="background-color:transparent;border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0cm;"| In this tutorial we learned,
+
| style="background-color:transparent;border-top:0.05pt solid #c0c0c0;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0cm;"|Let us summarize.
 +
 
 +
In this tutorial we learned,
  
 
while loop
 
while loop

Revision as of 16:58, 19 December 2013

Title of script: Loops in C and C++

Author: Dhawal Goyal

Keywords: Loops, for loop, while loop, do....while loop, type casting, and Video tutorial


Visual Cue
Narration
Slide 1 Welcome to the spoken tutorial on Loops in C and C++
Slide 2


In this tutorial we will learn,

for loop,

while loop and

do…while loop.

We will do this with the help of some examples.

We will also see some common errors and their solutions.

Slide 3


To record this tutorial, I am using

Ubuntu Operating System version 11.04

gcc and g++ Compiler version 4.6.1 on Ubuntu.

Slide 4 Let us start with the introduction to loops.

Loops are used to execute a group of instructions repeatedly.

Slide 5 Depending on the purpose they are divided into three types:

while loop

do…..while loop

for loop

Slide 6 Let us start with the while loop first.

A while loop tests the condition in the beginning.

The structure is as follows

while ( condition )

{ (within the brackets)

statement block

}

Slide 7 Now move on to the do….while loop

A do..while loop is executed at least once before the condition could be validated.

The structure is as follows

do { (within the brackets)

statement block

} (after the brackets)

while ( condition );


You can see that the condition is checked at the end.

Now let us see an example on while and do...while loop.

I have already typed the code on the editor.

Let me open it.

Point the cursor

while.c

Note that our filename is while.c

Today we are going to learn addition of first 10 numbers using while loop.

Let me explain the code now.

Highlight

#include <stdio.h>

This is our header file.
Highlight

int main()

{

int x=0;

int y=0;

Inside the main function we have declared two integer variables x and y.

And initialized to 0.



Highlight the while loop

while(x<=10)

{

y+=x;

x++;

}

This is our while loop.
Highlight while(x<=10) The condition of the while loop is x is less than or equal to 10.
Highlight y+=x;

printf( "%d\n", y );

Here the value of x is added to the value of y.

The value obtained after the addition is stored in y.

Then we print the value of y.

Highlight x++; Here x is incremented.

That means the variable x is increased by one.

Highlight

return 0;

And this is our return statement.
Now let us execute the program.
Open the terminal

Ctrl, Alt and T keys simultaneously

Please Open the terminal by pressing Ctrl, Alt and T keys simultaneously.
Type

gcc while.c -o while

To execute,

Type

./while

To compile the program, type

gcc while.c -o while

To execute,

Type

./while

Highlight

Output 55

The output is displayed.



Now let us see the working of while loop.

Let me resize the windows.

Here 1st the value of x and y is 0.
This is our while condition.

Here we check whether the value of x is less than or equal to 10.

Which means the values of x will be from 0 to 10.

Then we add y + x ie 0 + 0

We get 0.

We print the value of y

Here we get 0.

Then x is incremented.

Which means now the value of x will be 1.

Then we will check the condition again.

1 is less than or equal to 10

If the condition is true then we will add the values.

Y ie 0 + x ie 1.

0+1 is 1.

We print the value as 1.

Again x is incremented.

Now the value of x is 2.

We check the condition again.

2 is less than or equal to 10

If the condition is true then we will add the values.

ie 1+2

which will give 3.

We print the value as 3.

Like this it will go on upto x is less than or equal to 10.

Now, we will see the same program using do….while loop
Here is our program. Note that our fielname is do-while.c
This part is already explained in the previous program.

So let us move on to our do-while loop.

Here first the body of the loop will be executed.

And then the condition is checked.

Highlight

y+=x;

Here the value of x is added to the value of y

The value obtained after the addition is stored in y.

The logic is same as in while program.

Now let us execute the program.

Come back to the terminal.



Switch to terminal

Type:

gcc do-while.c -o do

Type:

./do

Type:

gcc do-while.c -o do

Type:

./do

Highlight

Output

We can see that the output is similar to the while program.

Now let us see the working of do-while loop.

Let me resize the windows.
Here the value of x and y is 0.

we add those values.

Then we will get 0.

Now the value of y is 0

We print the value as 0.

Then x is incremented by 1.

Which means now the value of x is 1.

Then the condition will be checked.

You can see that the body of the loop is executed first.

Anyhow if the condition is false then also we get a value ie 0.

Now here we will check whether 1 is less than or equal to 10.

The condition is true, again we will add the values.

Now 0+1

Then we will print the value of y as 1.

Again x will be incremented.

Now the value of x will be 2.

Then we check 2 is less than or equal to 10.

We will go back here.

Then we will add the values.

1+2 is 3.

We print the value of y as 3.

Like this the conditions will be checked till the value of x will be less than or equal to 10.
And this is our return statement.
Note that here the while condition ends with a semicolon.
In While loop the condition does not ends with a semicolon.
On the editor NOW LET US SEE HOW TO EXECUTE THESE PROGRAMS IN C++

I have already made the program.

The logic and implementation are same as in our C program. There are a few changes

Point the cursor at loops1.cpp like the header file as iostream in place of stdio.h

We have included the using statement here. Using namespace std;

Highlight

#include<iostream>

And here we have used cout function in place of printf function
Highlight

using namespace std;

This is the using statement.
Highlight int main() The structure of while loop is same as in our C program.
Highlight

int x=0;

int y=0;

Let us execute the program.

Come back to our terminal.

Highlight structure of while loop

while(x<=10)

{

y+=x;

x++;

}

type g++ while.cpp -o while1

Press Enter

type ./while1 Press Enter


We can see that the output is similar to our while program in C.

Highlight the commented do….while loop Now let us see the do….while program in C++

Come back to our text editor.

Highlight cout<<y<<”\n”; Here we print the value of y.
Highlight return 0; Here also there are similar changes like the header file, the using statement and the cout function.
Click on Save Rest of the things are similar.

Let us execute the program. Come back to our terminal.

On the terminal type g++ do-while.cpp -o do1

Press Enter

type ./do1 Press Enter

We can see that the output is similar to our do-while program in C.

Highlight

Output

Now we will see some common errors and their solutions.


Switch to the editor

Come back to our text editor.

int x=0; Now we look at the while loop.

Suppose here I will not increment the value of x. Click on Save. Come back to our terminal.


Switch to the terminal

Compile and execute

Let us execute the program again.

Press the up arrow key

Again press the up-arrow key.


Highlight error

Highlight Line no.8

Highlight loops1.cpp

Highlight x undeclared

The output is displayed.

We can see anumber of zeros.

This is because the loop does not have a terminating condition. It is known as infinite loop.

Infinite loop can cause the system to become unresponsive.

It causes the program to consume all the processes time.

But it can be temrinated.

Erase int x=0;

from line no.10

and rewrite int x=0;

at line no.6

Come back to our program

Let us fix the error

type x++ and a semicolon.

Click on Save

Let us execute again.

Switch to the terminal

Compile and execute

Come back to the terminal

Press the up-arrow key.

Yes it is working.



This brings us to the end of tutorial on loops.

Let us get back to our slides.

We will move back to our slides.

Slide 10

Summary

Let us summarize.

In this tutorial we learned,

while loop

eg. while(x<=10)

do….while loop

eg. do

{….}

while(x<=10);

Slide 11 As an assignment

Write a program to print the following using all the loops

0 1 2 3 4 5 6 7 8 9

Hint: the syntax of the for loop is

for (var initialization; condition; var incre\decre)

{

body

}

Highlight/point the mouse on variable initialization; Here we initialize the variable
Highlight/point the mouse on condition; Here we write the condition for the loop
Highlight/point the mouse on variable update Here we update the variable
Highlight/point the mouse on

{

body

}

Here we write the body of the loop
Slide 12

About the Spoken Tutorial Project

Watch the video available at the link shown

It summarizes the Spoken Tutorial project

If you do not have good bandwidth, you can download and watch it

Slide 13

Spoken Tutorial Workshops


The Spoken Tutorial Project Team

Conducts workshops using spoken tutorials

Gives certificates to those who pass an online test

For more details, please write to,

contact@spoken-tutorial.org

Slide Number 14


Acknowledgement

Spoken Tutorial Project is a part of the Talk to a Teacher project

It is supported by the National Mission on Education through ICT, MHRD, Government of India

More information on this Mission is available at: http://spoken-tutorial.org\NMEICT-Intro

This is Dhawal Goyal from IIT Bombay signing off

Thank You for joining.

Contributors and Content Editors

Ashwini, Nancyvarkey