Here is the solution explanation for this challenge, does that make sense or which part are you unsure about? It is pretty tricky how the formula gets solved.

Code Explanation

Math.random() generates our random number between 0 and ≈ 0.9.

Before multiplying it, it resolves the part between parenthesis (myMax - myMin + 1) because of the grouping operator ( ) .

The result of that multiplication is followed by adding myMin and then “rounded” to the largest integer less than or equal to it (eg: 9.9 would result in 9)

If the values were myMin = 1, myMax= 10 , one result could be the following:

max - min + 1 gives the range width
let’s say we want a number between 5 and 10: 10 - 5 is 5, but we want one of six numbers: 5, 6, 7, 8, 9, 10 (that’s why we need +1)
so, Math.random() gives a random number between 0 and 1, then multiplied by the range and rounded gives a number between 0 and 5
so we add min to have a number between 5 and 10 as desired