1
resposta

Exercício de ingredientes não repetidos. (Minha solução)

E ae, pessoal!

É minha primeira vez postando no fórum, gostaria de compartilhar minha solução para o exercício de ingredientes não repetidos. Gostaria que me ajudassem também com uma pequena dúvida que é a seguinte:

- Se por acaso a pessoa que digitar os ingredientes incluir letras minúsculas ou maiúsculas, mesmo os ingredientes sendo iguais eles vão passar no teste de verificação pela diferença de caracteres, como eu posso incluir essa verificação de caracteres minúsculos ou maiúsculos em meu código?

Muito obrigado pela atenção!

<meta charset="UTF-8">

<h1>Receitas do Yan</h1>

<script>

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

   function mostra(texto) {
       document.write(texto);
       document.write("<br>");
   }


    function adicioneIngredientes(quantidade) {
        var ingredientes = [];
        var contador = 1;

        while(contador <= quantidade) {
            var ingredienteAdicionado = prompt("Informe o ingrediente " + contador);
            var achou = false;


            for(x = 0; x < ingredientes.length; x++){
                if(ingredientes[x] == ingredienteAdicionado){
                    achou = true;
                    alert("Não adicione ingredientes repetidos.")
                    break;
                }
            }

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

    function exibeListaIngredientes() {
        for(x = 0; x < ingredientes.length; x++){
            mostra("Ingrediente "+ (x+1) +": "+ ingredientes[x]);
        }
    }

    exibeListaIngredientes();
</script>
1 resposta

Oi, Sandro, tudo bem?

Excelente código! Ficou muito bom!

Para resolver o problema de ingredientes repetidos por conta de letras maiúsculas e minúsculas podemos sempre converter os ingredientes para letras minúsculas, desta forma não haverá mais problemas na verificação. Para converter todas as letras dos ingredientes para letras minúsculas podemos utilizar o método toLowerCase().

A linha de código responsável por converter as letras ficará assim:

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

Parabéns pelo empenho nos estudos!

Espero ter ajudado.

E caso tenha quaisquer comentários ou dúvidas a respeito de alguma aula ou desafio, pode postar aqui no fórum que vamos te responder!

Abraços e bons estudos!