Coding Problem #2
by: Raul Martinez
Question:
Given an array of integers, return a new array such that each
element at index i of the new array is the product of all the
numbers in the original array except the one at i.
For example, if our input was [1, 2, 3, 4, 5], the expected output would be [120, 60, 40, 30, 24]. If our input was [3, 2, 1], the expected output would be [2, 3, 6]. What if you can't use division?
Back again with some coding practice. With this problem, I opted in to not using division and my thought process was that the easiest way to solve the problem was with a nested for loop. Although, I believe there is a faster way that I am not seeing yet.
const a = [1, 2, 3, 4, 5]
const product = array => {
const b = []
for (i = 0; i < array.length; i++) {
let n = 1
for (j = 0; j < array.length; j++) {
if (j !== i) {
n *= array[j]
}
}
b.push(n)
}
console.log(b)
return b
}
product(a)