Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Olá, Preciso de uma Pequena ajudinha.

Olá, meu código que está funcionando bem, fiz um sistema inteligente que reconhece se o ingrediente está no prural ou não, ou se possui gramas ou litros, mas nesse meio aconteceu um probleminha.

Meu código parou de alertar ingredientes repetido. E não entendo o porquê, podem me explicar?

<meta charset = "UTF-8">

<script>

function show(text) {

    document.write(text)
    jump()
}

function jump() {

    document.write("<br>") 
}

var itens = [];

var nome = prompt("Digite o nome do seu Tutorial");

var quantidade = parseInt(prompt("Digite a quantidade necessária de itens para o seu tutorial"));

var atual = 1;

while(atual <= quantidade) {

    var confirma = false;

    var item = prompt("Digite o °" + atual + " item do seu tutorial");

    for(var now = 0; now <= itens.length; now++) {

        if(item == itens[now]) {

            alert("Você já colocou este item, tente colocar outro.")
            confirma = true;
            break;
        }
    }

    if(confirma == false) {

        var quantidadeitens = prompt("Digite a quantidade necessária de itens " + atual)

        var verifica = false;

        for(var here = 0; here <= itens.length; here++) {

            if(isNaN(quantidadeitens)) {

                itens.push("<hr>" + item + "<br>" + quantidadeitens + " de " + item);
                verifica = true;
                break;
            }

            if(quantidadeitens > 1) {

                itens.push("<hr>" + item + "<br>" + quantidadeitens + " " + item + "s");
                verifica = true;
                break;
            }
        }

        if(verifica == false) {

            itens.push("<hr>" + item + "<br>" + quantidadeitens + " " + item);
        }

        atual++;

    }
}

var preparo = prompt("Digite o modo de preparo")

show("<h1>" + nome + "</h1>");
show("Itens necessários para o processo <br>" + itens + "<hr>")
show("<br> <br> Modo de preparo <br> <br> <big>" + preparo)


</script>
2 respostas
solução!

Oiii, Ezequiel! Tudo bem?

Para exibir o alert de que o ingrediente já foi adicionado é necessário adicionar na array cada item digitado no prompt e que é guardado na variável item. Por isso é necessário colocar itens.push(item) dentro da condicional if(confirma == false). Fica assim:


if(confirma == false) {

        itens.push(item)

        var quantidadeitens = prompt("Digite a quantidade necessária de itens " + atual)

        var verifica = false; 
        //resto do seu código

Em caso de mais dúvidas, me coloco à disposição.

Grande abraço e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

MUITTOOO OBRIGADO DE CORAÇÃOO

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software