//Exercicios aula 09. Arrays
//1. Lista de nomes
//Crie um array com 5 nomes. Use for para imprimir cada nome no console, um por linha.
const nomes = ['Zé', 'Teo', 'Ana', 'Ju', 'Washington'];
for(i = 0; i < nomes.length; i++){
console.log(nomes[i]);
}
//
//2. Adicionar e remover itens
//Comece com um array de frutas. Adicione uma nova fruta ao final com push() e remova a primeira com shift(). Mostre o array antes e depois.
const frutas = ['abacaxi', 'banana', 'caju', 'damasco', 'guaraná', 'laranja', 'manga', 'nectarina']
console.log('Antes: ', frutas);
frutas.push('kiwi');
frutas.shift();
console.log('Depois: ', frutas);
//
//3. Contar itens do array
//Crie um array com nomes de cidades e exiba no console a quantidade total de itens usando .length.
const cidades = ['Guará', 'Cruzeiro', 'Planaltina', 'Taguatinga', 'Patos de Minas', 'Anhangabaú']
console.log('Tamanho da lista: ', cidades.length);
//
//4. Contar todos os números
//Crie um array com 10 números. Use for para somar todos os valores e mostrar o total no final.
const numeros = [1,2,3,4,5,6,7,8,9,10];
let soma = 0;
for(i=0; i < numeros.length; i++){
soma += numeros[i];
console.log('soma com número anterior: ', soma);
}
//
//5. Média de notas
//Crie um array com 4 notas. Some os valores e calcule a média, exibindo uma mensagem de "Aprovado" ou "Reprovado" com base na média >= 7.
const notas = [5, 6, 4, 7];
var somaNotas = 0
for(i = 0; i < notas.length; i++) {
somaNotas += notas[i];
}
const media = somaNotas / notas.length;
if(media >= 7){
console.log('média final: ', media, '. Aprovado');
}else{
console.log('média final: ', media, '. Reprovado');
}
//
//6. Mensagens personalizadas com forEach
//Crie um array com nomes de usuários. Use forEach para imprimir "Olá, [nome]!" para cada um.
nomes.forEach((valor, indice) =>{
console.log('Olá ', valor, ', seja bem-vindo');
})
//
//7. Descontos com map
//Crie um array com preços de produtos. Use map para aplicar 10% de desconto em cada um e mostre os preços com desconto.
const precos = [10.99, 8.49, 9.00, 6.32, 7.12, 15.13, 12.13, 1.13, 1.13, 5.55, 25.36]
const desconto = precos.map((preco)=>{
return (preco * 0.9).toFixed(2);
})
console.log('Preço com desconto: R$', desconto);
//
//8. Filtrar valores altos
//Crie um array com idades. Use filter para retornar apenas as idades maiores ou iguais a 18 e exiba o resultado.
const idades = [10, 12, 16, 18, 20, 23, 25]
const maioridade = idades.filter((idade)=>{
return idade >= 18;
})
console.log('Maior de idade: ', maioridade);
//
//9. Simulando carrinho de compras
//Crie um array com os preços de produtos em um carrinho de compras.
//Utilize um laço for ou for...of para calcular o valor total da compra.
//Em seguida, aplique um desconto de 20% sobre o total e exiba o valor final no console.
let valorTotal = 0;
for(i = 0; i < precos.length; i++){
valorTotal += precos[i];
}
console.log('Valor bruto', valorTotal.toFixed(2));
console.log('Total da compra R$ ', valorTotal * 0.8, '. Desconto de R$ ', valorTotal * 0.2);
//
//10. Lista de tarefas
//Crie dois arrays:
//um array com nomes de tarefas
//outro array com valores booleanos indicando se a tarefa foi concluída (true ou false)
//Utilize o método filter para criar um novo array contendo apenas as tarefas que não foram concluídas.
//Exiba a lista de tarefas pendentes no console.
const tarefas = ['acordar', 'comer', 'viver', 'dormir'];
const bool = [false, true, false, true]
const feito = tarefas.filter((tarefa, indice) => {
return !bool[indice];
});
console.log('Tarefas não concluídas no dia de hoje: ', feito);