// 1. Lista de nomes
// Crie um array com 5 nomes.
// Use for para imprimir cada nome no console, um por linha.
const nomes = ['Esperidião', 'Natureza', 'Flora', 'Oatomo','Fuedi']
console.log('Usando For Tradicional')
for (i=0; i < nomes.length; i++){
console.log(nomes[i])
}
console.log('Usando forEach')
nomes.forEach( (valor) => {
console.log(valor)
});
console.log('usando for of')
for(const nome of nomes) {
console.log(nome)
}
// 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.
frutas = ['Amora','Acerola','Uva','Cereja','Morango','Melancia','Goiaba' ]
console.log('Frutas antes: ',frutas)
frutas.push('Kiwi')
frutas.shift()
console.log('Frutas depois do push e shift:',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 = ['São Paulo', 'Rio de Janeiro', 'João Pessoa', 'Cabedelo','Recife', 'Florianópolis', 'Curitiba','Porto Alegre', 'Foz do Iguaçu', "Cascavel", 'Santa Maria', 'Santa Cruz do Sul']
console.log('Total de cidades listadas', cidades.length)
// 4. Somar todos os números
// Crie um array com 10 números.
// Use for para somar todos os valores e mostrar o total no final.
let numeros = [1,3,7,11,13,17,19,23,29,31];
let soma = 0;
for (let i = 0; i< numeros.length;i++) {
soma += numeros[i]
console.log(numeros[i],soma)
}
console.log('Soma total no final: ',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.
let notas = [7,9,8.5,9.5]
let somaNotas = 0
for (let nota of notas) {
somaNotas += nota
}
let media = somaNotas / notas.length
if (media >=7) {
console.log ('Aprovado com a média: ', media)
} else {
console.log ('Reprovado com a média: ',media)
}
// 6. Mensagens personalizadas com forEach
// Crie um array com nomes de usuários.
// Use forEach para imprimir "Olá, [nome]!" para cada um.
let usuarios = ['McLovin', 'Junior', 'Ethan', "McLovin Jr.", 'luke']
// usuarios.forEach((usuario) =>{
// console.log(`Olá, ${usuario}!`)
// })
usuarios.forEach((usuario) =>{
console.log('Olá, '+usuario+'!')
})
// 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.
let precoProdutos = [10, 10, 15, 40, 50, 90]
let produtoCDescontos = precoProdutos.map((precoProduto)=> {
return precoProduto * 0.9
})
console.log('Nossos produtos com 10% de desconto:', produtoCDescontos)
// 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.
let idades = [16,15,18,50,21,33,30,36]
let maiorDeIdade = idades.filter((idade)=> {
return idade >= 18
})
console.log('São maior de idade: ', maiorDeIdade)
// 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 carrinho = [21,22,23,50,80,100,250,]
let total = 0
for (let precoCarrinho of carrinho){
total += precoCarrinho
}
let totalComDesconto = total * 0.8
console.log('Total com 20% de desconto: ',totalComDesconto)
// 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.
let tarefas = ['Academia',
'Comprar Ração',
'Ler',
'Estudar',
'fazer almoço',
'Mercado']
let concluidas = [false,
true,
false,
true,
true,
true
]
let tarefasPendentes = tarefas.filter((tarefa,index) => { // descobri que quando a tarefa era retirada do callback (tarefa,index), o terminal retornava Tarefas Pendentens: []
return concluidas[index] === false
})
console.log('Tarefas Pendentens:', tarefasPendentes)
No exercício 10, descobri que quando a tarefa era retirada do callback (tarefa,index), o terminal retornava Tarefas Pendentens: []