El código del bucle infinito es:
let cantidadNumeros = prompt('Ingrese la cantidad de números para el cálculo del promedio:');
let suma = 0;
let contador = cantidadNumeros;
while(contador > 0){
let numero = parseInt(prompt('Ingrese el numero:'));
suma += numero;
}
let promedio = suma / cantidadNumeros;
console.log(promedio);
Y una solución, por lo menos, la que aparece es: "Cuando utilizamos bucles con contadores, debemos asegurarnos de que en algún momento alcancen la condición de parada del bucle. En el código anterior, el contador no tiene su valor alterado, y para resolver el bucle infinito, simplemente debes decrementarlo en cada iteración, agregando la línea 'contador--' dentro del bucle".
Pero, tambien se puede declarar el contador en 0, y la suma, puede ser tambien "suma = suma + numero;", y dejar incrementando el contador "contador ++;". En la comparación del "while" comparo el "contador < cantidaddNumero", y el ciclo terminará en la cantidad de números introducidos. Esta es mi propuesta, funciona igual:
let cantidadNumeros = prompt('Ingrese la cantidad de números para el cálculo del promedio:');
let suma = 0;
let contador = 0;
while(contador < cantidadNumeros){
let numero = parseInt(prompt('Ingrese el numero:'));
suma = suma + numero;
contador ++;
}
let promedio = suma / cantidadNumeros;
console.log(promedio);