Iteration

What are the two ways to denote a block of code?

The standard in Ruby would be to use Braces for single-line blocks and do..end for multi-line blocks. keep in mind that the braces syntax has a higher precedence that the do..end syntax, here are some examples:

Using the do..end

but remember that you can pass parameters, so in the following example we will pass a parameter.

I will be honest with you, this do not look that interesting, because we can do the same thing with methods, but the problem with methods is that you can not pass a method to another method, but you can pass a block to another block, another use would be if you need to open a file write information and close the file, we will use this file case on the next example.

 

–  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  – – –  –  –  –  –  –  –

What is an index variable?

This are used on loops, as we know a loop is a chunk of code that will run a number of times until some conditions are met,  in most of the cases we use a variable to keep track in what run of the loop you are and the loop will stop when the variable is equal to the set value. in the example we have one taxi that can sit 5 passengers,  so we will seat 5, and then we will tell to the other passengers to wait for the next taxi.

–  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  – – –  –  –  –  –  –  –

How do you print out each item of a simple array [1,3,5,7] with:
while?

for?

#each?

#times?

–  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  – – –  –  –  –  –  –  –

What’s the difference between while and until?

While will run as long as the condition continues to be True, Until in the other side is false and will stop the loop when the condition became True.

–  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  – – –  –  –  –  –  –  –

How do you stop a loop?

The loop will stop when the condition is met. also you can stop it using break.

–  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  – – –  –  –  –  –  –  –

How do you skip to the next iteration of a loop?

Here we need to use an example, the following loop will print numbers from 1 to 10 but if the number is even, i don’t want to run the rest of the code of the loop, instead I want to skip to the next iteration of the loop.

–  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  – – –  –  –  –  –  –  –

How would you start the loop over again?

you have two options use the redo and retry, but be careful you can end up with an infinite loop.

–  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  – – –  –  –  –  –  –  –

What are the (basic) differences between situations when you would use while vs #times vs #each?

this are the answers that come to my head right now, if in the future I might expand on it:

While: I would use this one as long as the condition is false, and when the condition is true, then it will end the loop.

Times: I would use this when I know beforehand how many times I will need to run the code.

Each: I would use this when I know that the number of times is stored on an array, variable, ect

–  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  –  – – –  –  –  –  –  –  –

What does nesting loops mean and when would you use

Nesting loop means that you put a loop whiting a loop, and you use it when you need a loop whiting a loop. I know this answer is kind of stupid, jajaja, but let me give you an example, in the prep work we have one code that is the logic game with the following rules.

10 friends are sitting in a circle around a table and decide to play a new game. In it, they count up through the numbers from 1 to 100. The first person says “1”, the second says “2” and so on… but with a few catches:

  • Whenever the number is divisible by 7, they switch directions. So person 6 will say “6”, person 7 will say “7”, then person 6 again will say “8”.
  • Whenever the number is divisible by 11, they skip the next person.

Your job is to pseudocode a program which will determine which player says the number 100.

to do this I used two while’s nested whiting a while. see the code below.

To see all the outputs line by line, Un-Coment lines: 26, 50, 73. and then run the code again.


how to use UNLESS

 



Copyright 2017. All rights reserved.

Posted December 12, 2016 by Edmundo in category "Daily