Написать можно, например так:
function calc(){
var select = document.querySelectorAll('.calc>select');
let values = []
let result = 1
for (i = 0; i < select.length; i++){
values.push(+select[i].value)
result *= +select[i].value
select[i].setAttribute('data-index', i)
select[i].onchange = function(e){
const index = e.target.getAttribute('data-index')
result = result / +values[index] * +e.target.value
values[index] = +e.target.value
document.getElementById('result').innerHTML = result+'р.';
}
}
}
Но я бы не стал.