1
resposta

lista de exercicios 2 - JavaScript

Olá, segue minha lista de exercicios, aproveite para testar outras maneiras de fazer mas algumas ficaram com mais elementos do que necessário, mas testei mesmo assim para entender. Tive que colocar o .tofixed(2) pois o resultado estava saindo com muitos decimais.

//1 - Verificação de maioridade
const idade = 16
const maiorDeIdade = idade >= 18;
console.log('É maior de idade: ', maiorDeIdade);

// 2 - Situação do aluno
let notaUm = 5.5
let notaDois = 8.6
let media = (notaUm+notaDois)/2
console.log('Aprovado: ',media >= 7);

//Tambem funciona do jeito abaixo porem é mais trabalhoso:
//const aprovado = media >= 7
// console.log('Aprovado: ', aprovado);

// 3 - Simulação de troco
let valorCompra = 35.90;
let valorPago = 50;
let troco = valorPago-valorCompra;
console.log('Troco a devolver: R$ ', troco.toFixed(2));

// 4 -Validação de senha
const senhaUm = 55555;
const senhaDois = 55563;
const senhasIguais = senhaUm === senhaDois;
console.log('Senhas iguais? ',senhasIguais);

// 5 - Controle de faltas
let totalAulas = 25;
let faltas = 9;
//let faltas = 4 (teste) , neste caso não ultrapassa o limite de faltas.
let limiteDeFaltas = faltas > (totalAulas*0.25);
console.log('Limite de faltas ultrapassado:', limiteDeFaltas);

// 6 - Verificação de login
let temLogin = true;
let temSenha = false;
console.log('Possui login e senha: ',temLogin && temSenha);


// 7 - Valor negado
let disponivel = true;
console.log('Inverso: ', !disponivel);

// 8 - Condições compostas
let numeroUm = 8;
let numeroDois = 2;
let numerospares = (numeroUm % 2 === 0) && (numeroDois % 2 === 0);
let numerosIguais = numeroUm == numeroDois;
console.log('Os numeros são pares e iguais??',(numerospares && numerosIguais));

// 9 - Calculadora de porcentagem
let valor = 120.00;
let percentual = valor * 0.15
console.log('15% de 120 é igual a:',percentual);
//Maneira mais detalhada, em que o percentual pode ser alterado.
//let percentual = 15;
//let resultado = valor * (percentual/100);
//console.log('15% de 120 é igual a:',resultado);

// 10 - Ordem de operações
let expressao = 2 + 3 * 5;
console.log('O resultado é ',expressao,'pois pelo fato de não ter adicionado parenteses ele fez de acordo com a ordem da operação fazendo a multiplicação antes da soma');
1 resposta

Olá, Stephanie. Como vai?

Parabéns pela dedicação em realizar toda a lista de exercícios! É muito bom ver que você não apenas resolveu os problemas, mas também testou caminhos diferentes para entender como o JavaScript se comporta. Esse tipo de experimentação é o que acelera o aprendizado de verdade.

Gostaria de destacar alguns pontos excelentes na sua resolução e trazer dicas sobre as boas práticas que você já começou a aplicar:

  • **Uso do .toFixed(2)**: Você teve uma ótima percepção na questão 3. Em JavaScript, operações com números decimais podem gerar imprecisões (como 0.1 + 0.2 não ser exatamente 0.3). O uso do .toFixed(2) é a solução correta para formatar valores monetários para o usuário final, mas lembre-se: ele transforma o número em uma String. Se precisar fazer mais cálculos depois, você precisaria convertê-lo de volta para número.
  • Lógica de Faltas (Questão 5): Sua lógica para calcular o limite de 25% (totalAulas * 0.25) ficou perfeita e bem legível.
  • Operadores Lógicos e Comparação (Questões 6, 7 e 8): Você dominou bem o uso do && (E), ! (NÃO) e da comparação estrita ===. No exercício 8, sua escolha de usar parênteses para organizar a lógica de números pares facilitou muito a leitura.
  • Precedência de Operadores (Questão 10): Sua explicação está corretíssima. O JavaScript segue a regra matemática de prioridade (multiplicação e divisão antes de soma e subtração).

Como uma pequena sugestão de melhoria para o seu código ficar ainda mais "limpo" (o que chamamos de Clean Code), você pode explorar as Template Strings em vez de usar vírgulas no console.log. Isso ajuda muito quando temos textos longos:

// Em vez de:
console.log('Troco a devolver: R$ ', troco.toFixed(2));

// Você pode usar crases e o ${}:
console.log(`Troco a devolver: R$ ${troco.toFixed(2)}`);

Além disso, na Questão 8, notei que você usou == para comparar se os números são iguais. No JavaScript, a boa prática é usar quase sempre o === (três iguais), pois ele garante que você está comparando o valor e o tipo do dado, evitando comportamentos estranhos no futuro.

Continue com essa curiosidade de testar "maneiras mais trabalhosas", pois é assim que você descobre qual ferramenta funciona melhor para cada situação!

Espero que possa ter lhe ajudado!