## Day 68: 23 October 2020

## ****Today’s Progress**:**

### Passed the Intermediate Algorithm Scripting Challenge on freeCodeCamp: Sum All Odd Fibonacci Numbers

Given a positive integer

`num`

, return the sum of all odd Fibonacci numbers that are less than or equal to`num`

.The first two numbers in the Fibonacci sequence are 1 and 1. Every additional number in the sequence is the sum of the two previous numbers. The first six numbers of the Fibonacci sequence are 1, 1, 2, 3, 5 and 8.

For example,

`sumFibs(10)`

should return`10`

because all odd Fibonacci numbers less than or equal to`10`

are 1, 1, 3, and 5.

I had recently read this very interesting article that compares three methods to create the Fibonacci sequence. So I readjusted the code of the first implementation according to my needs.

### Progress on **Codecademy**

*LOOPS*

Review & Cheatsheet

Great job! In this lesson, we learned how to write cleaner code with loops. You now know:

- Loops perform repetitive actions so we don’t have to code that process manually every time.
- How to write
`for`

loops with an iterator variable that increments or decrements - How to use a
`for`

loop to iterate through an array - A nested
`for`

loop is a loop inside another loop `while`

loops allow for different types of stopping conditions- Stopping conditions are crucial for avoiding infinite loops.
`do...while`

loops run code at least once— only checking the stopping condition after the first execution- The
`break`

keyword allows programs to leave a loop during the execution of its block

*HIGHER-ORDER FUNCTIONS*

Review & Cheatsheet

Great job! By thinking about functions as data and learning about higher-order functions, you’ve taken important steps in being able to write clean, modular code and take advantage of JavaScript’s flexibility.

Let’s review what we learned in this lesson:

- Abstraction allows us to write complicated code in a way that’s easy to reuse, debug, and understand for human readers
- We can work with functions the same way we would any other type of data including reassigning them to new variables
- JavaScript functions are first-class objects, so they have properties and methods like any object
- Functions can be passed into other functions as parameters
- A higher-order function is a function that either accepts functions as parameters, returns a function, or both

****Thoughts:****

I tried to write the solution of another freeCodeCamp challenge but it doesn't work for the moment.

I need to prepare slides to use as presentation media for my fifth OpenClassRooms project.

I will use Slides Carnival.

I also need to start studying these courses (in French) that I will need for the sixth OpenClassRooms project:

## ****Link to tweet:****

[twitter-follow screen_name='20Gabriele20']