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

Não encontrei o erro :(

Olá! Fiz o exercício e ainda sim o ingrediente repetido apareceu, ao verificar a resposta percebi que fiz quase tudo certo, porém não estou encontrando onde errei... Poderiam me sinalizar? Ps: Inseri document.write pra poder visualizar mais rápido na tela haha.

<meta charset="UTF-8">


<h1>Receitas do Yan</h1>

<script>
    var ingredientes = [];

    var quantidade = parseInt(prompt("Quantos ingredientes você vai adicionar?"));

    var contador = 1;



    while( contador <= quantidade) {

        var ingrediente = prompt("Informe o ingrediente" + contador);

        var achou = false;


              for(var posicao = 0; posicao < ingredientes.lenght; posicao++) {

                if(ingredientes[posicao] == ingrediente) {
                    achou = true;
                    break;
                }
            }


            if (achou == false) {
                ingredientes.push(ingrediente);
                contador++;    
            }

    }


    document.write("Os ingredientes são " + ingredientes );

    console.log(ingredientes);
</script>
2 respostas
solução!

Olá, Ana.

Verifiquei o seu código e vi que um pequeno erro de digitação. O length está escrito como lenght (com h e t invertidos). É muito normal isso acontecer. O erro maior nesse caso é da linguagem, que deveria levantar um erro no console.

Fiz essa simples modificação e seu código funciona perfeitamente.

<meta charset="UTF-8">
<h1>Receitas do Yan</h1>
<script>
    var ingredientes = [];
    var quantidade = parseInt(prompt("Quantos ingredientes você vai adicionar?"));
    var contador = 1;

    while (contador <= quantidade) {
        var ingrediente = prompt("Informe o ingrediente " + contador);
        var achou = false;
        for (var posicao = 0; posicao < ingredientes.length; posicao++) {
            if (ingredientes[posicao] == ingrediente) {
                achou = true;
                break;
            }
        }
        if (achou == false) {
            ingredientes.push(ingrediente);
            contador++;    
        }
    }

    document.write("Os ingredientes são " + ingredientes );
    console.log(ingredientes);
</script>

Espero ter ajudado.

Muito obrigada!!