Difference between revisions of "Ruby/C3/for-and-each-Looping-Statements/English-timed"
From Script | Spoken-Tutorial
Jyotisolanki (Talk | contribs) |
PoojaMoolya (Talk | contribs) |
||
(9 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
− | |||
− | |||
{| border=1 | {| border=1 | ||
|| '''Time''' | || '''Time''' | ||
Line 7: | Line 5: | ||
|- | |- | ||
| 00:01 | | 00:01 | ||
− | | | + | | Welcome to the tutorial on '''for and each Loops''' in '''Ruby'''. |
|- | |- | ||
| 00:05 | | 00:05 | ||
− | | | + | | In this tutorial, we will learn: |
|- | |- | ||
| 00:07 | | 00:07 | ||
− | | | + | |Meaning of the term ''' “loop” '''. The different kinds of loops in '''Ruby ''' |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
|- | |- | ||
| 00:11 | | 00:11 | ||
− | | | + | |Usage of ''' “for” ''' loop and Usage of ''' “each” ''' looping construct. |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
|- | |- | ||
| 00:14 | | 00:14 | ||
− | | | + | |Here, we are using: |
|- | |- | ||
| 00:16 | | 00:16 | ||
− | | | + | | ''' Ubuntu''' version '''12.04''' |
|- | |- | ||
| 00:19 | | 00:19 | ||
− | |''' Ruby | + | |''' Ruby 1.9.3 ''' |
|- | |- | ||
| 00:22 | | 00:22 | ||
− | | | + | |To follow this tutorial, you must have ''' Internet''' connection. |
− | |||
|- | |- | ||
| 00:25 | | 00:25 | ||
− | | | + | | You must also have knowledge of '''Linux''' commands, ''' Terminal''' and ''' Text-editor.''' |
− | + | ||
− | + | ||
|- | |- | ||
| 00:30 | | 00:30 | ||
− | | | + | |If not, for relevant tutorials, please visit our website. |
− | + | ||
|- | |- | ||
| 00:34 | | 00:34 | ||
− | | | + | | Now, let me explain what is referred to as a ''' “loop” ''' in '''Ruby. ''' |
|- | |- | ||
| 00:38 | | 00:38 | ||
− | | | + | |A '''loop''' is a '''command''' or set of commands that are executed a fixed number of times. |
|- | |- | ||
| 00:44 | | 00:44 | ||
− | | | + | | Ruby has the following main looping statements. |
|- | |- | ||
| 00:47 | | 00:47 | ||
− | |'''for''' | + | | '''for''', '''each ''', ''' while''', '''until'''. |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
|- | |- | ||
| 00:50 | | 00:50 | ||
− | | | + | |In this tutorial, we will learn how to use the '''for''' and ''' each''' looping constructs. |
|- | |- | ||
| 00:55 | | 00:55 | ||
− | | | + | | Before we begin, please create the following folders in your home directory- |
|- | |- | ||
| 01:02 | | 01:02 | ||
− | | ttt, ruby hyphen tutorial, looping hyphen statements. | + | | '''ttt, ruby hyphen tutorial, looping hyphen statements'''. |
|- | |- | ||
| 01:07 | | 01:07 | ||
− | | | + | | Please create the sub-folders as mentioned there. |
|- | |- | ||
| 01:11 | | 01:11 | ||
− | | | + | |Now we have created the requisite folders. |
|- | |- | ||
| 01:13 | | 01:13 | ||
− | | | + | |Let's move ahead. |
|- | |- | ||
| 01:15 | | 01:15 | ||
− | | | + | |The syntax of the ''' “for” loop''' in Ruby is as follows: |
− | + | ||
|- | |- | ||
| 01:19 | | 01:19 | ||
| ''' for “variable” in “a collection of objects” ''' | | ''' for “variable” in “a collection of objects” ''' | ||
− | |||
|- | |- | ||
| 01:22 | | 01:22 | ||
− | |''' ruby code ''' | + | |''' ruby code ''' ''' end ''' |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
|- | |- | ||
| 01:25 | | 01:25 | ||
− | | | + | | Let us try to understand it with an example. |
|- | |- | ||
| 01:28 | | 01:28 | ||
− | | | + | | Create a new file in '''gedit''' as shown in the basic level ''' Ruby tutorials''' |
|- | |- | ||
| 01:32 | | 01:32 | ||
− | | | + | |and name it '''for hyphen loop dot rb '''. |
− | + | ||
|- | |- | ||
| 01:36 | | 01:36 | ||
− | | | + | |I already have a working example of the ''' “for” loop'''. |
|- | |- | ||
| 01:39 | | 01:39 | ||
− | | | + | |You can type the code as we go through this example. |
|- | |- | ||
| 01:44 | | 01:44 | ||
− | | ''' “for” ''' | + | | I have declared a ''' “for” loop ''' in this example. |
|- | |- | ||
| 01:47 | | 01:47 | ||
− | | We have a set of | + | | We have a set of numbers 1 to 20. |
|- | |- | ||
| 01:50 | | 01:50 | ||
− | | ''' “for” ''' | + | | We declare a variable called “i” within the ''' “for” loop'''. |
− | + | ||
|- | |- | ||
| 01:55 | | 01:55 | ||
− | |The variable “i” | + | |The variable “i” gets initialized to the first '''element''' in the set of numbers 1 to 20. |
|- | |- | ||
| 02:00 | | 02:00 | ||
− | | The ''' “for” ''' | + | | The ''' “for” ''' loop declaration causes the code to iterate over each element in the set 1 to 20. |
|- | |- | ||
| 02:07 | | 02:07 | ||
− | |''' | + | | The ''' “puts” ''' method declared within the ''' “for” ''' loop is responsible for generating the output. |
− | + | ||
|- | |- | ||
| 02:14 | | 02:14 | ||
− | | | + | |Now, open the ''' terminal''' and type: |
|- | |- | ||
| 02:17 | | 02:17 | ||
− | | ''' ruby space for hyphen loop dot rb ''' | + | | ''' ruby space for hyphen loop dot rb ''' and see the output. |
|- | |- | ||
| 02:22 | | 02:22 | ||
− | | | + | |The output will be an '''array''' of numbers 1 to 20. |
|- | |- | ||
| 02:26 | | 02:26 | ||
− | | In this example, we declared a ''' “for”''' loop for an inclusive range. | + | | In this example, we declared a ''' “for”''' loop for an '''inclusive range'''. |
|- | |- | ||
Line 208: | Line 173: | ||
|- | |- | ||
| 02:49 | | 02:49 | ||
− | |Here ''' “for”''' loop is implemented for a non-inclusive range of numbers 1 to 20. | + | |Here, ''' “for”''' loop is implemented for a '''non-inclusive range''' of numbers 1 to 20. |
|- | |- | ||
Line 216: | Line 181: | ||
|- | |- | ||
| 02:59 | | 02:59 | ||
− | |The last | + | |The last number does not get included when you have 3 dots between numbers. |
|- | |- | ||
| 03:04 | | 03:04 | ||
− | | Now open the ''' terminal''' and type ''' ruby space for hyphen loop dot rb''' | + | | Now, open the ''' terminal''' and type: ''' ruby space for hyphen loop dot rb''' |
|- | |- | ||
Line 229: | Line 194: | ||
| 03:17 | | 03:17 | ||
|The output will still be an ''' array''' of numbers but will not include the number 20. | |The output will still be an ''' array''' of numbers but will not include the number 20. | ||
− | |||
|- | |- | ||
Line 237: | Line 201: | ||
|- | |- | ||
| 03:27 | | 03:27 | ||
− | |The syntax of the ''' “each”''' loop in | + | |The syntax of the ''' “each”''' loop in Ruby is as follows: |
|- | |- | ||
| 03:31 | | 03:31 | ||
− | | ''' “a collection of objects” dot each do item ''' | + | | ''' “a collection of objects” dot each''', '''do item ''' |
|- | |- | ||
| 03:36 | | 03:36 | ||
− | | ''' ruby code end''' | + | | ''' ruby code''' '''end''' |
|- | |- | ||
| 03:38 | | 03:38 | ||
|Let us try to understand it with an example. | |Let us try to understand it with an example. | ||
− | |||
|- | |- | ||
| 03:42 | | 03:42 | ||
− | | Create a new file in '''gedit''' as shown in the basic level '''Ruby''' | + | | Create a new file in '''gedit''' as shown in the basic level '''Ruby tutorials''' |
|- | |- | ||
| 03:46 | | 03:46 | ||
− | | | + | |and name it '''each hyphen loop dot rb'''. |
|- | |- | ||
Line 279: | Line 242: | ||
| 04:06 | | 04:06 | ||
|We declare a variable called “i” within the '''each''' loop. | |We declare a variable called “i” within the '''each''' loop. | ||
− | |||
|- | |- | ||
| 04:11 | | 04:11 | ||
| The “i” variable gets initialized to the first element in the set of numbers 1 to 20. | | The “i” variable gets initialized to the first element in the set of numbers 1 to 20. | ||
− | |||
|- | |- | ||
| 04:17 | | 04:17 | ||
− | |The '''each''' loop declaration causes the code to iterate over each element in the set 1 to 20. | + | |The '''each''' loop declaration causes the code to iterate over each '''element''' in the set 1 to 20. |
|- | |- | ||
| 04:23 | | 04:23 | ||
− | |The ''' puts''' method declared within the ''' each''' | + | |The ''' puts''' method declared, within the ''' each''' loop, is responsible for generating the output. |
|- | |- | ||
| 04:30 | | 04:30 | ||
− | |Now open the ''' terminal''' and type ''' ruby space each hyphen loop dot rb ''' | + | |Now, open the ''' terminal''' and type: ''' ruby space each hyphen loop dot rb ''' |
|- | |- | ||
| 04:39 | | 04:39 | ||
| and see the output. | | and see the output. | ||
− | |||
|- | |- | ||
| 04:43 | | 04:43 | ||
− | |The output will be an array of numbers 1 to 20. | + | |The output will be an '''array''' of numbers 1 to 20. |
− | + | ||
|- | |- | ||
| 04:46 | | 04:46 | ||
− | | In the above example we declared an ''' each''' loop for an inclusive range. | + | | In the above example, we declared an ''' each''' loop for an '''inclusive range'''. |
− | + | ||
|- | |- | ||
Line 327: | Line 285: | ||
|- | |- | ||
| 05:04 | | 05:04 | ||
− | | Non-inclusive means it will not include the last element in the collection of objects. | + | | '''Non-inclusive''' means it will not include the last element in the collection of objects. |
|- | |- | ||
| 05:10 | | 05:10 | ||
− | | Here an '''each''' loop is implemented for a non-inclusive range of numbers 1 to 20. | + | | Here, an '''each''' loop is implemented for a non-inclusive range of numbers 1 to 20. |
− | + | ||
|- | |- | ||
Line 340: | Line 297: | ||
|- | |- | ||
| 05:20 | | 05:20 | ||
− | | The last | + | | The last number does not get included when you have 3 dots between numbers. |
|- | |- | ||
| 05:25 | | 05:25 | ||
− | |Now open the '''terminal''' and type '''ruby space each hyphen loop dot rb''' | + | |Now, open the '''terminal''' and type: '''ruby space each hyphen loop dot rb''' |
|- | |- | ||
Line 356: | Line 313: | ||
|- | |- | ||
| 05:44 | | 05:44 | ||
− | |How would we determine which looping construct to choose? | + | |How would we determine which looping '''construct''' to choose? |
|- | |- | ||
| 05:48 | | 05:48 | ||
− | |Let us try to recall the '''for''' | + | |Let us try to recall the '''"for" loop construct'''. |
− | |||
|- | |- | ||
| 05:53 | | 05:53 | ||
− | |In the first example, we iterated over a set of numbers from 1 to 20 using '''for'''. | + | |In the first example, we iterated over a set of numbers from 1 to 20 using '''for''' loop. |
|- | |- | ||
| 05:59 | | 05:59 | ||
− | | Execute ''' ruby space for hyphen loop dot rb''' in your terminal see the output. | + | | Execute: ''' ruby space for hyphen loop dot rb''' in your terminal, see the output. |
|- | |- | ||
|06:08 | |06:08 | ||
− | | Now look at the code in '''gedit.''' | + | | Now, look at the code in '''gedit.''' |
|- | |- | ||
| 06:11 | | 06:11 | ||
− | |When you invoke the '''for loop''', | + | |When you invoke the '''for loop''', Ruby is actually calling the '''each''' method behind the scenes. |
|- | |- | ||
| 06:16 | | 06:16 | ||
− | |And calling '''each''' or '''for''' will generate the same output. | + | |And, calling '''each''' or '''for''' will generate the same output. |
|- | |- | ||
Line 390: | Line 346: | ||
| 06:28 | | 06:28 | ||
| This brings us to the end of this Spoken Tutorial. | | This brings us to the end of this Spoken Tutorial. | ||
− | |||
|- | |- | ||
| 06:30 | | 06:30 | ||
|Let's summarize. | |Let's summarize. | ||
− | |||
|- | |- | ||
| 06:32 | | 06:32 | ||
− | |In this tutorial we have learnt | + | |In this tutorial, we have learnt: Usage of ''' for''' loop |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
|- | |- | ||
| 06:35 | | 06:35 | ||
− | |Usage of '''each''' construct | + | | Usage of '''each''' construct |
|- | |- | ||
| 06:38 | | 06:38 | ||
− | |Reasoning behind using '''each''' instead of '''for''' | + | | Reasoning behind using '''each''' instead of '''for''' |
|- | |- | ||
| 06:41 | | 06:41 | ||
− | |Examples of using the above looping constructs | + | | Examples of using the above looping constructs. |
|- | |- | ||
| 06:45 | | 06:45 | ||
− | | As an assignment | + | | As an assignment- |
|- | |- | ||
Line 427: | Line 377: | ||
|- | |- | ||
| 06:50 | | 06:50 | ||
− | |to create an output of even numbers from a set of numbers, say 1 to 20 | + | |to create an output of even numbers from a set of numbers, say 1 to 20. |
− | + | ||
|- | |- | ||
Line 436: | Line 385: | ||
|- | |- | ||
| 07:00 | | 07:00 | ||
− | |It | + | |It summarizes the Spoken Tutorial project. |
|- | |- | ||
Line 444: | Line 393: | ||
|- | |- | ||
| 07:08 | | 07:08 | ||
− | | | + | | The Spoken Tutorial project team: |
|- | |- | ||
| 07:11 | | 07:11 | ||
− | |Conducts workshops using spoken tutorials | + | | Conducts workshops using spoken tutorials. |
|- | |- | ||
|07:14 | |07:14 | ||
− | |Gives certificates to those who pass an online test | + | | Gives certificates to those who pass an online test. |
|- | |- | ||
| 07:18 | | 07:18 | ||
− | |For more details, please write to contact@spoken-tutorial.org | + | |For more details, please write to: contact@spoken-tutorial.org |
|- | |- | ||
| 07:23 | | 07:23 | ||
− | | | + | | '''Spoken Tutorial''' project is a part of the '''Talk to a Teacher''' project. |
|- | |- | ||
Line 468: | Line 417: | ||
|- | |- | ||
| 07:33 | | 07:33 | ||
− | |More information on this | + | |More information on this mission is available at: spoken hyphen tutorial dot org slash NMEICT hyphen Intro. |
|- | |- | ||
| 07:41 | | 07:41 | ||
− | | This is Anjana Nair signing off. Thank you | + | | This is Anjana Nair, signing off. Thank you. |
|} | |} |
Latest revision as of 15:20, 27 March 2017
Time | Narration |
00:01 | Welcome to the tutorial on for and each Loops in Ruby. |
00:05 | In this tutorial, we will learn: |
00:07 | Meaning of the term “loop” . The different kinds of loops in Ruby |
00:11 | Usage of “for” loop and Usage of “each” looping construct. |
00:14 | Here, we are using: |
00:16 | Ubuntu version 12.04 |
00:19 | Ruby 1.9.3 |
00:22 | To follow this tutorial, you must have Internet connection. |
00:25 | You must also have knowledge of Linux commands, Terminal and Text-editor. |
00:30 | If not, for relevant tutorials, please visit our website. |
00:34 | Now, let me explain what is referred to as a “loop” in Ruby. |
00:38 | A loop is a command or set of commands that are executed a fixed number of times. |
00:44 | Ruby has the following main looping statements. |
00:47 | for, each , while, until. |
00:50 | In this tutorial, we will learn how to use the for and each looping constructs. |
00:55 | Before we begin, please create the following folders in your home directory- |
01:02 | ttt, ruby hyphen tutorial, looping hyphen statements. |
01:07 | Please create the sub-folders as mentioned there. |
01:11 | Now we have created the requisite folders. |
01:13 | Let's move ahead. |
01:15 | The syntax of the “for” loop in Ruby is as follows: |
01:19 | for “variable” in “a collection of objects” |
01:22 | ruby code end |
01:25 | Let us try to understand it with an example. |
01:28 | Create a new file in gedit as shown in the basic level Ruby tutorials |
01:32 | and name it for hyphen loop dot rb . |
01:36 | I already have a working example of the “for” loop. |
01:39 | You can type the code as we go through this example. |
01:44 | I have declared a “for” loop in this example. |
01:47 | We have a set of numbers 1 to 20. |
01:50 | We declare a variable called “i” within the “for” loop. |
01:55 | The variable “i” gets initialized to the first element in the set of numbers 1 to 20. |
02:00 | The “for” loop declaration causes the code to iterate over each element in the set 1 to 20. |
02:07 | The “puts” method declared within the “for” loop is responsible for generating the output. |
02:14 | Now, open the terminal and type: |
02:17 | ruby space for hyphen loop dot rb and see the output. |
02:22 | The output will be an array of numbers 1 to 20. |
02:26 | In this example, we declared a “for” loop for an inclusive range. |
02:31 | It included all numbers from 1 to 20. |
02:35 | Next, we shall look at implementing the “for” loop for a non-inclusive range. |
02:41 | Continue to type the next part of the code. |
02:44 | Non-inclusive means it will not include the last element in the collection of objects. |
02:49 | Here, “for” loop is implemented for a non-inclusive range of numbers 1 to 20. |
02:55 | You will notice shortly that the number 20 will not be printed in the output. |
02:59 | The last number does not get included when you have 3 dots between numbers. |
03:04 | Now, open the terminal and type: ruby space for hyphen loop dot rb |
03:13 | and see the output. |
03:17 | The output will still be an array of numbers but will not include the number 20. |
03:22 | Now, you should be capable enough to write your own “for” loop. |
03:27 | The syntax of the “each” loop in Ruby is as follows: |
03:31 | “a collection of objects” dot each, do item |
03:36 | ruby code end |
03:38 | Let us try to understand it with an example. |
03:42 | Create a new file in gedit as shown in the basic level Ruby tutorials |
03:46 | and name it each hyphen loop dot rb. |
03:50 | I already have a working example of the each loop. |
03:53 | You can type the code as we go through this example. |
03:58 | I have declared an each loop in this example. |
04:03 | We have a set of numbers 1 to 20. |
04:06 | We declare a variable called “i” within the each loop. |
04:11 | The “i” variable gets initialized to the first element in the set of numbers 1 to 20. |
04:17 | The each loop declaration causes the code to iterate over each element in the set 1 to 20. |
04:23 | The puts method declared, within the each loop, is responsible for generating the output. |
04:30 | Now, open the terminal and type: ruby space each hyphen loop dot rb |
04:39 | and see the output. |
04:43 | The output will be an array of numbers 1 to 20. |
04:46 | In the above example, we declared an each loop for an inclusive range. |
04:51 | It included all numbers from 1 to 20. |
04:54 | Next we shall look at implementing the each loop for a non-inclusive range. |
05:00 | Continue to type this part of the code. |
05:04 | Non-inclusive means it will not include the last element in the collection of objects. |
05:10 | Here, an each loop is implemented for a non-inclusive range of numbers 1 to 20. |
05:16 | You will notice shortly that the number 20 will not be printed in the output. |
05:20 | The last number does not get included when you have 3 dots between numbers. |
05:25 | Now, open the terminal and type: ruby space each hyphen loop dot rb |
05:34 | and see the output. |
05:39 | Now you should be capable enough to write your own each loop. |
05:44 | How would we determine which looping construct to choose? |
05:48 | Let us try to recall the "for" loop construct. |
05:53 | In the first example, we iterated over a set of numbers from 1 to 20 using for loop. |
05:59 | Execute: ruby space for hyphen loop dot rb in your terminal, see the output. |
06:08 | Now, look at the code in gedit. |
06:11 | When you invoke the for loop, Ruby is actually calling the each method behind the scenes. |
06:16 | And, calling each or for will generate the same output. |
06:21 | Since the call to for in turn calls each, it is preferable to use the each loop instead. |
06:28 | This brings us to the end of this Spoken Tutorial. |
06:30 | Let's summarize. |
06:32 | In this tutorial, we have learnt: Usage of for loop |
06:35 | Usage of each construct |
06:38 | Reasoning behind using each instead of for |
06:41 | Examples of using the above looping constructs. |
06:45 | As an assignment- |
06:47 | Write a ruby program using the appropriate loop construct |
06:50 | to create an output of even numbers from a set of numbers, say 1 to 20. |
06:56 | Watch the video available at the following link. |
07:00 | It summarizes the Spoken Tutorial project. |
07:03 | If you do not have good bandwidth, you can download and watch it. |
07:08 | The Spoken Tutorial project team: |
07:11 | Conducts workshops using spoken tutorials. |
07:14 | Gives certificates to those who pass an online test. |
07:18 | For more details, please write to: contact@spoken-tutorial.org |
07:23 | Spoken Tutorial project is a part of the Talk to a Teacher project. |
07:26 | It is supported by the National Mission on Education through ICT, MHRD, Government of India. |
07:33 | More information on this mission is available at: spoken hyphen tutorial dot org slash NMEICT hyphen Intro. |
07:41 | This is Anjana Nair, signing off. Thank you. |