Olá pessoal, eu adicionei um "while" e um "if" no começo para verificar se o "prompt" recebe um numero, aparece uma mensagem "alert" de erro e repete o "prompt" se ele não receber um numero. Implementei essa verificação improvisadamente, usei o que eu aprendi nesse curso, provavelmente existe uma maneira melhor de se chegar nesse mesmo resultado... No final eu adicionei duas impressões na tela, uma é a quantidade de ingredientes da receita e a outra é uma lista com os ingredientes da receita, eu usei "document.write" para mostrar o resultado no site e usei as tags do HTML "ul" e "li" para criar uma lista não ordenada. Segue meu código:
<meta charset="UTF-8">
<h1>Minha Receita</h1>
<script>
function pulaLinha() {
document.write("<br>");
}
function mostra(texto) {
document.write(texto);
pulaLinha();
}
var ingredientes = [];
var quantidade;
while(isNaN(quantidade) == true){
quantidade = parseInt(prompt("Quantos ingredientes você vai adicionar?"));
if(isNaN(quantidade)){
alert("Digite um número!");
}
}
var contador = 1;
while(contador <= quantidade) {
var ingrediente = prompt("Informe o ingrediente " + contador + ":");
var igual = false;
if(ingrediente !== ""){
for(var i = 0; i < ingredientes.length; i++){
if(ingredientes[i] == ingrediente){
igual = true;
alert("Ingrediente encontrado na lista. Tente adicionar outro ingrediente!")
break;
}
}
if(igual == false){
ingredientes.push(ingrediente);
contador++;
}
} else {
alert("Digite um ingrediente!");
}
}
console.log(ingredientes);
mostra(quantidade + " ingredientes:");
mostra("<ul><li>" + ingredientes.join("</li><li>"));
</script>
Bons estudos à todos!