2
respostas

Não estou conseguindo de jeito nenhum! Estou com muita dificuldade! Por que fala que não existe ingrediente na linha 20?

<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");

        var achou = false;

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

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

                     }

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

    console.log(ingredientes);
</script>
2 respostas

Boa noite Alexandre,

Seu programa tem 2 erros, você digitou ingredientes errado na linha 20 (ingreditentes) e você não está atualizando o contador do while, então seu código resulta em um loop infinito.

abaixo segue o código corrigido.

var ingredientes = [];

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

    var contador = 1;

    while( contador <= quantidade) {

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

        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++;
                     }
        contador++;
    }

    console.log(ingredientes);

Mesmo assim acho que o código ainda não faz o que você queria. Tente descrever o seu objetivo e aí eu tento te ajudar melhor.

Abraços

Obrigado.

Eu só vi depois que tinha enviado que tinha um erro de escrita. Tentei me virar sem olhar o gabarito. Não achei que fosse só ali que estivesse errado, mas era só ali mesmo.

Depois de while coloquei só um contador conforme o gabarito e deu certo.

Não entendi porque 2 incrementadores(contador ++).

Muito obrigado,

Att, Alex