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:
Math.random() = 0.8244326990411024
(myMax - myMin + 1) = 10 - 1 + 1 -> 10
a * b = 8.244326990411024
c + myMin = 9.244326990411024
Math.floor(9.244326990411024) = 9