Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
6
respuestas

confusion

es un bastante confuso el uso de if while break lo voy a seguir repasando por el momento porque no me queda claro

6 respuestas

Hola Juan! Como estas!!

Si es algo confuso. La practica te va a ir ayudando!! por ejemplo puede utilizar las herramientas de desarrollador de chrome para ir jugando con las funciones e ir aprendiendo como funcionan. También puedes googlear la función que te genera dudas y vas a encontrar diferentes formas para entenderla.

En los casos que expresas: el "if" se utiliza para encapsular un segmento de código que solo se ejecuta cuando se cumple el argumento del if "if(argumento)" el argumento puede ser una comparación de dos o mas variables.

El "while" es un ciclo repetitivo que se itera o se repite siempre que se cumple el argumento "while(argumento)". O lo puedes detener en cualquier ciclo con la funcion "break", la llamas cuando quieras detener al while.

Espero haberte ayudado

saludos. Éxitos

Me pasa lo mismo, es confuso. No entiendo bien como hace el programa para no repetir ingredientes, si yo le estoy pasando la posición del Array en la que estoy y no todas las anteriores...

Hola Pedro!! Como estas?

Creo que entiendo tu pregunta. Te puedo explicar un poco el segmento de código donde se valida que no se repitan ingredientes. Al final anexo el código completo.

primero fíjate el for=for (var posicion = 0; posicion < ingrediente.length ; posicion++) , este for se utiliza para recorrer el Array "ingredientes", en cada ciclo del for se compara cada uno de los elementos que componenen al Array "ingredientes" con el ingrediente nuevo que acaba de ingresarse "ingrediente" y se utiliza el if=if (ingrediente == ingredientes(posicion)) para evaluar que si el ingrediente nuevo ya esta en el Arrey, alerta repetido y usa el break para finalizar el for, en caso contrario sigue recorriendo el Array hasta completarlo. cuando lo completa termina los ciclos de for y vuelve al while de afuera.

Espero te ayude, si tenes dudas podemos hablar por el Discord.

Saludos. Éxitos

Recetas de Armando

Al inicio resulta un poco complicado , pero con practica lograras entenderlo perfectamente.

Hola,

Espero ayudarte con lo que expondre.

Cuando usas el while (mientras) el realizará una las secuencias de preguntas. Dentro de esta secuencia, existe otra, For (para) que va a hacer una revisión de lo que estás indicando, ¿Que?. El array, vector o lista... ¿Como sabes que haces eso? for(var posicion = 0; posicion < ingredientes.length; posicion++) Creando una variable, que este caso se llama "posicion", que por convención de programación se usa la i. Esta variable, va a ir revisando cada item de la lista y si la condición IF (si) encuentra el duplicado, da el mensaje de duplicado y cierra el break para salir del For y volver al while. Esto es para responder a Pedro, el programa no ha permitido ingresar ingredientes repetidos, por lo que no tiene que llegar al final de la lista para verificar que si ya existe uno en el index 2, no tiene llegar al final.

Continuando; si lo visualizas por capaz, veras que realiza una labor y sale de la capa inferior a una superior al usar break (romper, quebrar..) y reinicia la secuencia de bucle. Si no es repetida, sale del for, ingresa el ingrendiente nuevo pero queda en el encapsulamiento del while, por lo que se repite el proceso desde la linea 14 en adelante hasta no cumplir con su condición que el contador sea menor o igual a la cantidad indicada.

Y para complementar, si existe la pregunta del porque afecta break al for y no al while, es por los corchetes que encapsulan esa comando break dentro del bucle de for solamente. Esto es fundamental para entender donde trabaja tal cosa con otra.

Espero haber sido de ayuda. Saludos,

Buenísimo, se me aclara bastante el panorama. Muchas gracias a todos por responder. No estaba teniendo en cuenta que el for recorre todo el Array porque empieza de 0 y suma de a uno y en cada vuelta compara el ingrediente actual con los demás (con los anteriores y con los que siguen aunque estén vacíos).

Gracias!!