Exercise 5

Modern JavaScript Using Control Structures
11 minutes
Share the link to this page
Copied
  Completed
You need to have access to the item to view this lesson.
One-time Fee
$99.99
List Price:  $139.99
You save:  $40
€93.20
List Price:  €130.49
You save:  €37.28
£79.91
List Price:  £111.88
You save:  £31.96
CA$136.56
List Price:  CA$191.19
You save:  CA$54.63
A$153.05
List Price:  A$214.27
You save:  A$61.22
S$136.08
List Price:  S$190.51
You save:  S$54.43
HK$782.75
List Price:  HK$1,095.88
You save:  HK$313.13
CHF 91.21
List Price:  CHF 127.70
You save:  CHF 36.49
NOK kr1,100.23
List Price:  NOK kr1,540.37
You save:  NOK kr440.13
DKK kr695.05
List Price:  DKK kr973.10
You save:  DKK kr278.04
NZ$168.07
List Price:  NZ$235.31
You save:  NZ$67.23
د.إ367.25
List Price:  د.إ514.16
You save:  د.إ146.91
৳10,970.75
List Price:  ৳15,359.49
You save:  ৳4,388.74
₹8,335.10
List Price:  ₹11,669.48
You save:  ₹3,334.37
RM476.90
List Price:  RM667.68
You save:  RM190.78
₦130,608.93
List Price:  ₦182,857.73
You save:  ₦52,248.80
₨27,840.21
List Price:  ₨38,977.41
You save:  ₨11,137.19
฿3,694.31
List Price:  ฿5,172.18
You save:  ฿1,477.87
₺3,253.72
List Price:  ₺4,555.34
You save:  ₺1,301.61
B$515.88
List Price:  B$722.26
You save:  B$206.37
R1,886.05
List Price:  R2,640.54
You save:  R754.49
Лв182.13
List Price:  Лв254.99
You save:  Лв72.85
₩137,567.94
List Price:  ₩192,600.62
You save:  ₩55,032.68
₪380.78
List Price:  ₪533.11
You save:  ₪152.32
₱5,769.12
List Price:  ₱8,077
You save:  ₱2,307.87
¥15,680.08
List Price:  ¥21,952.74
You save:  ¥6,272.66
MX$1,724.22
List Price:  MX$2,413.98
You save:  MX$689.75
QR364.68
List Price:  QR510.56
You save:  QR145.88
P1,379.77
List Price:  P1,931.74
You save:  P551.96
KSh13,498.65
List Price:  KSh18,898.65
You save:  KSh5,400
E£4,789.68
List Price:  E£6,705.74
You save:  E£1,916.06
ብር5,693.24
List Price:  ብር7,970.76
You save:  ብር2,277.52
Kz83,560.30
List Price:  Kz116,987.77
You save:  Kz33,427.46
CLP$94,840.51
List Price:  CLP$132,780.51
You save:  CLP$37,940
CN¥724.59
List Price:  CN¥1,014.46
You save:  CN¥289.86
RD$5,873.12
List Price:  RD$8,222.61
You save:  RD$2,349.48
DA13,427.17
List Price:  DA18,798.58
You save:  DA5,371.40
FJ$225.97
List Price:  FJ$316.37
You save:  FJ$90.39
Q777.73
List Price:  Q1,088.86
You save:  Q311.12
GY$20,914.34
List Price:  GY$29,280.91
You save:  GY$8,366.57
ISK kr13,988.60
List Price:  ISK kr19,584.60
You save:  ISK kr5,596
DH1,011.63
List Price:  DH1,416.33
You save:  DH404.69
L1,776.81
List Price:  L2,487.61
You save:  L710.79
ден5,738.79
List Price:  ден8,034.54
You save:  ден2,295.74
MOP$805.67
List Price:  MOP$1,127.97
You save:  MOP$322.30
N$1,914.68
List Price:  N$2,680.63
You save:  N$765.95
C$3,678.96
List Price:  C$5,150.69
You save:  C$1,471.73
रु13,310.19
List Price:  रु18,634.81
You save:  रु5,324.61
S/372.97
List Price:  S/522.18
You save:  S/149.20
K385.04
List Price:  K539.08
You save:  K154.03
SAR375.02
List Price:  SAR525.04
You save:  SAR150.02
ZK2,631.59
List Price:  ZK3,684.33
You save:  ZK1,052.74
L463.78
List Price:  L649.31
You save:  L185.53
Kč2,343.96
List Price:  Kč3,281.64
You save:  Kč937.68
Ft36,581.40
List Price:  Ft51,215.43
You save:  Ft14,634.02
SEK kr1,089.92
List Price:  SEK kr1,525.94
You save:  SEK kr436.01
ARS$87,365.86
List Price:  ARS$122,315.70
You save:  ARS$34,949.84
Bs692.26
List Price:  Bs969.20
You save:  Bs276.93
COP$394,057.74
List Price:  COP$551,696.60
You save:  COP$157,638.86
₡50,249.28
List Price:  ₡70,351
You save:  ₡20,101.72
L2,468.18
List Price:  L3,455.56
You save:  L987.37
₲742,598.03
List Price:  ₲1,039,666.95
You save:  ₲297,068.91
$U3,834.62
List Price:  $U5,368.62
You save:  $U1,534
zł402.81
List Price:  zł563.95
You save:  zł161.14
Already have an account? Log In

Transcript

We've come to exercise five. So let me jump to sublime. And I'll explain what I'd like you to do in this exercise. So here's the assignment. I'd like you to write a loop, you can choose which type of loop you want to use. But this loop will display a Fibonacci sequence that starts with zero and one now goes through the loop until the final number in the sequence is equal to or less than 1000.

Now, Fibonacci sequence, in case you're not aware, is a sequence of numbers, where each number is equal to the sum of the previous two numbers. So here's an example I have in this right up, zero and one, and then zero plus one is one, one plus one is two, one plus two is three, three plus two is five, and so on, so the next number in the sequence would be eight. So you need to write a loop. That is going to figure out that sequence, put it together, and then display it and then just display it to the console. Go ahead and pause the movie now take some time to figure that out. And then when you're ready to review what you've done, you can restart the movie.

All right, I hope you are successful in accomplishing that. Sometimes the biggest problem to solve is not the individual code pieces that go into some code, but it's actually more of a holistic look at how are we going to get this problem to work out. And so sometimes it is helpful to write down some notes of things that need to happen in order for you to solve this. So for example, one thing I know I need to do is store the results in a sequence because I need to display that sequence. So that is the final output of this I've got to have a sequence of numbers. And so I need to be storing something for in order to be able to display the sequence.

Now as I compute each number, I need to add two numbers. That's something else I need to do. And then once I've added those two numbers, I need to assign the results to the sequence. And then once I've done that, I need to figure out what the next two numbers will be that I'll be adding together in the next iteration through the loop. Alright, if I can do those things, then I think I can solve this problem. So let's go ahead and set this up.

First, we're going to create some variables. And the first variable I'm going to create is going to To a string that holds the sequence. Now, the first part of the sequence we know is zero. And so I'm going to go ahead and put that in. Because that's going to be the start of our sequence. Now we need to deal with two numbers.

And so let's set up those two numbers initially know the first number is going to be equal to zero, the second number, so the next number in the sequence has got to be one. Now, I need to add these two numbers together. And then I need to put the results in the sequence. Well, how about if I create a nother variable here that's going to store that results? And then I can put that in the sequence. So let's call this the new number.

Because what we're going to be figuring out when we're adding those together is what the next number in the sequence is. And so what is the new num while If we add these two together, we get one, the next number in the sequence is one. So let's set that initially as one. All right, so those are the variables that I need to have set up. Now let's do the loop. Now I am going to use a while loop, you could use a different type of loop if you choose to.

But the reason I'm using a while loop is because we want to run this loop until the final number is less than or equal to 1000. So I can simply do while that number is less than or equal to 1000. So it seems to be a logical choice. Although we could use any kind of loop in reality, so we want to check num less than or equal to 1000. So that's how long we're going to run the loop. Right now.

When we first enter the loop new num is equal to One. Now we want to add the results to the sequence. So let's do that first. So here's our string. And we're going to add to it the new num. That's what we want to do, because that new number is going to be changing.

As we go through the loop. That will be a different number. And so we'll add that to the sequence each time through the loop. And that's how we'll keep track of the entire tire sequence. Now let's use our new assignment operator to do that. So plus equal and new num.

And then we want to add on the end of that, a comma, then a space just like what we've done up here. So we want to follow that same pattern. And so we will add to it the new num, and then a comment and space. Now let's just take a moment here. And talk about cores and and how it's working. In this case, this is a stream.

This is a string, because we are using the concatenation operator, it is going to coerce the number to a string. And so we're dealing with numbers here and these variables, but once we try to add it to the string, it's going to curse it to a string. And that's how Korean is working in this example. All right, now that we've added the new number to the sequence, let's go ahead and determine what the next number is going to be. And so we do that by replacing new num with number one, plus number two. Now we have our new num.

And the next time through next iteration through the loop is going to add it to the fibs sequence variable. Now we've got to adjust these the purpose have these two variables that keep track of the two numbers that we need to add together. And so basically what the next set of two numbers will be is num, two and new num. And so what we should do is set num one equal to num two, and then set num two equal to new num now will allow us to keep track of those two numbers for the next time through the loop. So let's go ahead and do that. Num one equals num two.

And then num. Two equals No. All right, I think we have what we need in this loop to make it work. So let me go ahead and save that. Let me grab the file path here. And we'll just take a look and see what we're getting.

Open the console. And we're not getting anything yet. I forgot to log the results to the console. So let me jump back and we'll do that So once we're finished with the loop, this is where we want to log to the console. And we'll just log the sequence. Save that again, jump out.

There's our Fibonacci sequence 012358. And you can see that it is following the rules of a Fibonacci sequence. So that's working for us. However, there is one thing I don't like here down at the end of this, there's a comma, and it makes it look like there should be another number coming after it. And really, this is last number because the next number would be greater than 1000. So this is the last one that will show.

But I don't like that comma sitting there. And so let's make a change to correct that. Now, there's a bunch of different ways we could go about removing that comma or correcting this, but I'm just going to use a simple technique to remove it from the string. Right at the time. We're logging into the console. And I'm going to use the slice method of the string object wrapper to do that.

So the way we would use slice dot slice, and then remember we specify the starting character of the string, which we want to use. And that's going to be zero because what we're going to do is we're going to display all of the string except the last two characters and why the last two characters will last two characters are comma, and space. So there's a space there as well. So we have to take that into account. So we will display everything but the last two characters. So this will begin getting the string from the start.

Remember, strings are zero based, so we use a zero. That'll get the first character. And the second number we want to include in slice is the index of the character. That's amazing. After what we want to extract, and so it would be the index of the comma, because we're going to get everything before that. So let's figure out what the index of the comma would be.

The index of the very last character in a string is the length of the string minus one, we subtract one because the index position of those characters are zero based where the length of the string is not zero based. It's just the total number of characters there in that string. So the very last character is length minus one. So it comma would be length minus two. So we could do it like this. And then we do length minus two.

Let's save that and see we get refreshed again. Oh, I had a misspelling. Save that. There we go. And we have the comma and the space removed now so it looks better. All right, I hope you were successful in that particular exercise.

But more important than that, I hope you're understanding the results of the exercise. Now, keep in mind, this could have been done a number of different ways, so your results don't need to be exactly like mine. What you want to bank on is getting this information here showing. Alright, let's move on.

Sign Up

Share

Share with friends, get 20% off
Invite your friends to LearnDesk learning marketplace. For each purchase they make, you get 20% off (upto $10) on your next purchase.