Yo encontré un par de fallas, igual en las respuestas incorrectas, donde, por ejemplo:
OPCIÓN A: Nisiquiera entra a los condicionales debido a que el nombre de las variables es diferente (cantidadDeMillas != cantidadMillas), con la propuesta siguiente de arranque:
let porcentajeDescuento = 0;
let cantidadDeMillas = prompt("Ingrese la cantidad de millas");
if (cantidadDeMillas > 5000) {//if (cantidadMillas > 5000) { //ni lo lee, nombre diferente
//porcentajeDescuento = 10;
alert("descuento de 10");
}
if (cantidadDeMillas > 30000) {
//porcentajeDescuento = 20;
alert("descuento de 20");
} else {
//porcentajeDescuento = 0;
alert("descuento de 0");
}
OPCION B: removiendo el else nos deja sin respuesta a un valor menor a 5000
OPCION C: Encontré el mismo error que A (cantidadDeMillas != cantidadMillas), además no se establece el valor inicial del porcentajeDescuento, la propuesta para esta opción es:
let cantidadDeMillas = prompt("Ingrese la cantidad de millas");
//let cantidadMillas = prompt("Ingrese la cantidad de millas");
let porcentajeDescuento = 0;
if (cantidadDeMillas > 5000) {
porcentajeDescuento = porcentajeDescuento + 10;
alert("descuento de 10");
} else {
porcentajeDescuento = porcentajeDescuento + 20;
alert("descuento de 20");
}
if (cantidadDeMillas > 30000) {
porcentajeDescuento = porcentajeDescuento + 20;
alert("descuento de 20");
} else {
porcentajeDescuento = 0;
alert("descuento de 0");
}
//mismo error cantidadDeMillas
//error en let porcentajeDescuento = 0; no agregado
OPCION D: SOLUCIÓN propuesta para verificar valores:
let porcentajeDescuento = 0;
let cantidadDeMillas = prompt("Ingrese la cantidad de millas");
if (cantidadDeMillas > 30000) {
porcentajeDescuento = porcentajeDescuento + 20;
alert("descuento de 20");
} else {
if (cantidadDeMillas > 5000) {
porcentajeDescuento = porcentajeDescuento + 10;
alert("descuento de 10");
}
}
NOTA: Mi propuesta de solución para revisar cuánto de descuento se aplica a cada cantidad de millas, incluyendo valores menores a 5000 es:
//PROPUESTA
let porcentajeDescuento = 0;
let cantidadMillas = prompt("Ingrese la cantidad de millas");
if (cantidadMillas >= 30000) {
porcentajeDescuento = 20;
alert("descuento de 20");
//alert("descuento del 20 %");
} else if (cantidadMillas >= 5000) {
porcentajeDescuento = 10;
alert("descuento de 10");
} else {
porcentajeDescuento = 0;
alert("descuento de 0");
}