Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

1
resposta

[Projeto] Lista de exercicio 09 - Arrays

//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);
1 resposta

Olá, João! Como vai?

Parabéns pela resolução da atividade!

Vi que você explorou um array para organizar dados com JavaScript, utilizou muito bem os métodos como forEach, map e filter para manipular listas e ainda compreendeu a importância da estrutura de repetição para cálculos e verificações.

Continue postando as suas soluções, com certeza isso ajudará outros estudantes e tem grande relevância para o fórum.

Uma dica interessante para o futuro é aplicar reduce para somar valores de forma mais elegante. Assim:

const numeros = [1,2,3,4,5,6,7,8,9,10];
const soma = numeros.reduce((acc, num) => acc + num, 0);
console.log('Soma total: ', soma);

Isso faz o cálculo da soma em uma única linha, deixando o código mais conciso.

Se quiser aprofundar ainda mais, algumas boas práticas são:

  • Consistência nos nomes de variáveis: usar nomes claros e descritivos.
  • Uso de métodos modernos: preferir map, filter, reduce em vez de laços tradicionais quando possível.
  • Separação de lógica: criar funções para operações repetitivas, como cálculo de médias ou aplicação de descontos.

Ah, uma pergunta: você acha que usar métodos modernos como reduce deixa o código mais elegante e eficiente ou prefere manter laços tradicionais para maior clareza no aprendizado inicial?

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!