1
00:00:00,120 --> 00:00:03,540
Click on 5.3 adding evens.

2
00:00:05,190 --> 00:00:10,190
The exercise is kind of similar to what Gauss had to do that I showed you in the

3
00:00:11,610 --> 00:00:13,890
last lesson, but in your case,

4
00:00:14,070 --> 00:00:19,070
I want you to calculate the sum of all the even numbers from 1 to 100,

5
00:00:20,310 --> 00:00:24,150
including 1 and 100. So for example,

6
00:00:24,150 --> 00:00:26,730
it might be two plus four plus six plus eight,

7
00:00:26,760 --> 00:00:29,640
and so on and so forth until you get to a hundred.

8
00:00:30,210 --> 00:00:34,260
It's a little bit more complicated than what the ten-year-old had to do.

9
00:00:34,680 --> 00:00:38,280
And the important thing to remember is that there should only be one print

10
00:00:38,280 --> 00:00:40,170
statement in your output.

11
00:00:40,410 --> 00:00:44,940
It should just print the final total and not every step of the calculation.

12
00:00:45,720 --> 00:00:48,270
So have a think about how you might solve this challenge,

13
00:00:48,660 --> 00:00:50,610
pause the video and try to give this a go.

14
00:00:56,450 --> 00:00:56,750
All right.

15
00:00:56,750 --> 00:01:00,590
So there's actually quite a few ways that you could have solved this challenge.

16
00:01:01,160 --> 00:01:01,400
Now,

17
00:01:01,400 --> 00:01:05,480
one of the ways would have been using what we learned from the last lesson and the

18
00:01:05,480 --> 00:01:09,680
ability to create a range function using a different step size.

19
00:01:09,920 --> 00:01:10,753
I'll show you what I mean.

20
00:01:11,150 --> 00:01:16,150
So let's create a full loop where we say for every number in the range between

21
00:01:16,970 --> 00:01:20,030
1 to 100, so that's 101,

22
00:01:20,720 --> 00:01:24,110
then we're going to do something with each number, right? Namely,

23
00:01:24,110 --> 00:01:27,200
we're probably going to create a variable called total

24
00:01:27,590 --> 00:01:32,590
and then we're going to add each of the even numbers together and accumulate it

25
00:01:32,930 --> 00:01:34,190
inside this variable.

26
00:01:34,940 --> 00:01:39,590
Now remember that I mentioned that the range function actually has a third thing

27
00:01:39,590 --> 00:01:42,920
that you can add to it, not just the start and the end,

28
00:01:43,160 --> 00:01:47,210
but also the step size. so we can change the step size to two,

29
00:01:47,660 --> 00:01:52,660
and then now what it's going to do is it's going to go through 1 to 100 and

30
00:01:54,440 --> 00:01:57,230
it's going to increase the step size by two.

31
00:01:58,490 --> 00:02:01,820
So that means if we print this range as it is right now,

32
00:02:01,880 --> 00:02:06,560
it's going to give us one plus two which is three, plus two

33
00:02:06,560 --> 00:02:08,840
which is five and so on and so forth.

34
00:02:09,260 --> 00:02:12,560
But if we change the range to start off from two

35
00:02:12,710 --> 00:02:16,640
which is the first number that we have to start adding in our sequence, and then

36
00:02:16,640 --> 00:02:18,860
increase it by two every single time,

37
00:02:19,130 --> 00:02:23,570
then we end up with a range that includes all of the even numbers up to a

38
00:02:23,570 --> 00:02:26,510
hundred. And I'll show you if I run this code right now.

39
00:02:27,290 --> 00:02:32,000
So the next part is simple. All we have to do is to add the number to

40
00:02:32,000 --> 00:02:35,420
the current total. So total += number.

41
00:02:35,900 --> 00:02:38,570
And then finally outside the for loop,

42
00:02:38,720 --> 00:02:42,230
you can go ahead and print that total. Now,

43
00:02:42,380 --> 00:02:46,490
when I go ahead and run this code now, it's going to give me just the total.

44
00:02:46,850 --> 00:02:50,960
Now remember that the indentation really matters because if I have it like this,

45
00:02:51,260 --> 00:02:54,800
then it's going to give me the total for every step of the calculation,

46
00:02:55,100 --> 00:03:00,100
because it's now included in the for loop and will be executed for as many times

47
00:03:00,910 --> 00:03:05,350
as the for loop runs. But if I remove the indentation, then the

48
00:03:05,350 --> 00:03:08,680
for loop is just this and this is outside of it

49
00:03:08,920 --> 00:03:12,160
so it's only going to give it to me once everything has been done

50
00:03:12,280 --> 00:03:16,360
and I've got the final total. And it's the correct solution.

51
00:03:17,140 --> 00:03:19,870
But you might have also done it in a different way.

52
00:03:20,200 --> 00:03:23,370
You might have said for a number in range,

53
00:03:24,090 --> 00:03:25,860
1 to 101,

54
00:03:26,820 --> 00:03:31,820
and you had some sort of another total, let's call it total2 

55
00:03:34,200 --> 00:03:35,460
and started at zero,

56
00:03:35,880 --> 00:03:40,880
and then we say that if the number % 2 is equal to 0,

57
00:03:41,970 --> 00:03:44,490
so if it's even essentially,

58
00:03:44,730 --> 00:03:49,350
then we're going to add this number to the total2.

59
00:03:51,060 --> 00:03:54,480
Finally, outside of the if and outside of the for,

60
00:03:54,750 --> 00:03:58,620
we're going to print the final total. Now,

61
00:03:58,650 --> 00:04:01,140
if I just run the code, then you can see

62
00:04:01,200 --> 00:04:04,350
I get exactly the same number as before.

63
00:04:05,310 --> 00:04:09,240
So if you chose to solve this challenge in either of these ways,

64
00:04:09,270 --> 00:04:11,910
then you've succeeded. They're both right.

65
00:04:12,390 --> 00:04:15,180
And there's probably even other ways that you could solve this as well.

66
00:04:15,480 --> 00:04:18,570
But these two, I suspect will be the most popular approaches.

67
00:04:19,770 --> 00:04:24,150
Now in the next lesson, I've got another coding exercise for you

68
00:04:24,330 --> 00:04:29,160
and it's probably one of the top interview questions that programmers get asked

69
00:04:29,220 --> 00:04:34,020
when they're being interviewed for a job. So head over there and give it a go.

