Esta es una propuesta de la lista de recetas tatando de usar todo lo aprendido hasta el momento. Se que se puede mejorar mas pero cualquier sugerencia o duda me comentan. Saludos.
<meta charset="UTF-8">
<h1>Recetas de Armando</h1>
<script>
//Capturar el ingrediente
function addIngrediente(cont){
var ingre;
return ingre = prompt("Informe el ingrediente " + cont);
}
//Valida si el ingrediente ya esta repetido, true: repetido, false: no repetido
function validarRepetido(lista, elemento){
var ingRepetido = false;
for(let i=0; i<=lista.length; i++){
if(lista[i] == elemento){
ingRepetido = true;
}
}
return ingRepetido;
}
//Imprime un mensaje en pantalla
function imprimir(msg){
document.write(msg);
}
//Especifica el numero de saltos de linea
function brLine(saltos){
for(let i=0; i<saltos;i++){
imprimir("<br>")
}
}
//----->CUERPO DEL PROGRAMA
var ingredientes = [];
var cantidad = parseInt(prompt("¿Cuántos ingredientes vas a añadir?"));
var contador = 1;
while( contador <= cantidad) {
//Primer elemento
if(contador == 1){
ingredientes.push(addIngrediente(contador));
contador++;
}
//Resto de elementos
if(cantidad > 1 && contador >1){
var ingrediente = addIngrediente(contador);
var repetido = validarRepetido(ingredientes, ingrediente);
if(!repetido){
ingredientes.push(ingrediente);
contador++;
}else{
alert("Ingrediente repetido. Ingrese otro");
}
}
}
document.write("<h3>Lista de ingredientes</h3>");
for(let i=0 ; i< ingredientes.length; i++){
imprimir("Ingrediente " + (i+1) + ": " + ingredientes[i]);
brLine(1);
}
console.log(ingredientes);
</script>