Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

164
Vistas
envío gratuito... si el total del gráfico de compras es superior a $35... entrada del usuario a menos que el total sea superior a $35 en JavaScript

No estoy seguro de lo que estoy haciendo mal. Gracias de antemano por ayudarme en este asunto.

 var sum = 0; var pricecheck = 35; while (sum < pricecheck) { var userinput = prompt("Please enter the cost of the item..."); var num1 = parseInt(userinput); submitprice.push(num1); for (i = 0; i < submitprice.length; i++) { sum += submitprice[i]; } } alert("free shipping.");

about 4 years ago · Juan Pablo Isaza
3 Respuestas
Responde la pregunta

0

Declare sum a cero cada vez que ejecute la suma de elementos. De lo contrario, seguirá sumando a la suma que se calculó en la iteración anterior.

Además, su precio de submitprice parece no estar definido. Lo he inicializado como una matriz vacía.

violín de trabajo

 var sum = 0; var pricecheck = 35; const submitprice = []; while (sum < pricecheck) { var userinput = prompt("Please enter the cost of the item..."); var num1 = parseInt(userinput); submitprice.push(num1); sum = 0; for (i = 0; i < submitprice.length; i++) { sum += submitprice[i]; } } alert("free shipping.");

about 4 years ago · Juan Pablo Isaza Denunciar

0

Para comenzar, debe crear una matriz vacía para almacenar los totales. Para esto, lo llamaré "carrito":

 var cart = [];

A continuación, sugeriría crear una declaración if para verificar si la entrada es un número:

 var num1 = parseInt(userinput); if(isNaN(userinput){ alert("Please enter a number"); continue; }

No necesita el bucle for para agregar la entrada a la suma, simplemente elimine el bucle:

 sum += userinput

Después del ciclo, empujarías al carrito:

 cart.push(num1)

Finalmente, debe verificar si la suma es mayor que el envío gratuito

 if(sum >= pricecheck) { alert("You qualify for free shipping!")' }

Luego, simplemente envíe el resultado a la consola con una tubería (|) concatenada entre los números.

 console.log(cart.join(" | ") 

 var sum = 0; var cart = []; var pricecheck = 35; while (sum < pricecheck) { var userinput = prompt("Please enter the cost of the item..."); if (userinput === null) { break; } var num1 = parseInt(userinput); if (isNaN(userinput)) { alert("Please enter a number"); continue; } cart.push(num1); sum += num1; } if (sum >= pricecheck) { alert("free shipping."); }

about 4 years ago · Juan Pablo Isaza Denunciar

0

Eché un vistazo a esta tarea nuevamente para actualizar lo que se solicitó para esta pregunta. No necesita tener ese ciclo for en absoluto dentro del ciclo while. Dentro de cada iteración del bucle while, le pregunta al usuario el precio de su próximo artículo, lo agrega al carrito de compras y también lo agrega a un total acumulado (este total es su "suma"). No es necesario volver a calcular este total acumulado cada vez dentro del ciclo while porque lo habría hecho en una sola línea. Está tratando de calcular el precio, comenzando en 0, cada vez que recorre el ciclo while (usando su ciclo for). Pero esto no es necesario ya que ya tiene un total acumulado que se puede agregar cada vez que el usuario ingresa un valor.

"Austin Caron" lo explicó bien, pero para esta tarea no necesitamos realizar la autenticación de usuario.

PD Haz todo lo posible por evitar hacer preguntas directamente sobre una tarea y haz preguntas más generales sobre un concepto o una idea con la que tengas dificultades.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda