Procurei usar os exercícios como base e tentei explorar um pouco mais para praticar conforme segue:
// ==================== EXERCÍCIO 1: SISTEMA BANCÁRIO ====================
let saldo = 1000; // Saldo inicial
const historico = []; // Array para armazenar o histórico de transações
// Função para depositar dinheiro
function operacaoDepositar(valor) {
console.log("=======EXERCÍCIO 1 HISTÓRICO BANCÁRIO")
if (valor <= 0) {
console.log("Erro: Valor inválido para depósito.");
return;
}
saldo += valor;
historico.push({
tipo: "Depósito",
valor: valor,
data: new Date().toLocaleString('pt-BR')
});
console.log(`Depósito de R$${valor} realizado. Novo saldo: R$${saldo}`);
}
// Função para sacar dinheiro
function operacaoSacar(valor) {
if (valor <= 0) {
console.log("Erro: Valor inválido para saque.");
return;
}
if (valor > saldo) {
console.log("Saldo insuficiente!");
return;
}
saldo -= valor;
historico.push({
tipo: "Saque",
valor: valor,
data: new Date().toLocaleString('pt-BR')
});
console.log(`Saque de R$${valor} realizado. Novo saldo: R$${saldo}`);
}
// Função para transferir dinheiro
function operacaoTransferir(valor, destinatario) {
if (valor <= 0) {
console.log("Erro: Valor inválido para transferência.");
return;
}
if (valor > saldo) {
console.log("Saldo insuficiente para transferência!");
return;
}
saldo -= valor;
historico.push({
tipo: "Transferência",
valor: valor,
destinatario: destinatario,
data: new Date().toLocaleString('pt-BR')
});
console.log(`Transferência de R$${valor} para ${destinatario} realizada. Novo saldo: R$${saldo}`);
}
// Função para ver saldo
function verSaldo() {
console.log(`Seu saldo atual é: R$${saldo}`);
}
// Função para ver histórico
function verHistorico() {
console.log("\n---- HISTÓRICO DE TRANSAÇÕES ----");
if (historico.length === 0) {
console.log("Nenhuma transação registrada.");
} else {
historico.forEach((transacao, index) => {
console.log(
`${index + 1}. ${transacao.tipo} | ` +
`Valor: R$${transacao.valor} | ` +
(transacao.destinatario ? `Destinatário: ${transacao.destinatario} | ` : "") +
`Data: ${transacao.data}`
);
});
}
}
// Testes
operacaoDepositar(600);
operacaoSacar(200);
operacaoTransferir(400, "Paulo");
verSaldo();
verHistorico();
// ==================== EXERCÍCIO 2: PAR OU ÍMPAR ====================
function verificarParImpar(numero) {
console.log("\n====EXERCÍCIO 2 VERIFICAR SE É PAR OU ÍMOAR")
if (isNaN(numero)) {
console.log("Erro: Digite um número válido!");
} else {
const resultado = numero % 2 === 0 ? "Par" : "Ímpar";
console.log(`O número ${numero} é ${resultado}.`);
}
}
verificarParImpar("abc"); // Erro
verificarParImpar(236552); // Par
// ==================== EXERCÍCIO 3: BAÚ DO TESOURO ====================
const temChaveLogica = false;
const temChaveFisica = false;
const podeAbrirBau = temChaveLogica && temChaveFisica;
console.log("\n=== EXERCÍCIO 3 BAÚ DO TESOURO ===");
console.log(`Chave Lógica: ${temChaveLogica ? "Sim" : "Não"}`);
console.log(`Chave Física: ${temChaveFisica ? "Sim" : "Não"}`);
if (podeAbrirBau) {
console.log("Parabéns! Você abriu o baú!");
} else {
console.log("O baú está trancado!");
}
// ==================== EXERCÍCIO 4: SISTEMA DE ALARME ====================
const sensorPorta = false;
const sensorJanela = true;
const sensorPortaGaragem = false;
const alarmeAtivado = sensorPorta || sensorJanela || sensorPortaGaragem;
console.log("\n===EXERCÍCIO 4 SISTEMA DE ALARME ===");
console.log(`Porta: ${sensorPorta ? "Aberta" : "Fechada"}`);
console.log(`Janela: ${sensorJanela ? "Aberta" : "Fechada"}`);
console.log(`Porta da Garagem: ${sensorPortaGaragem ? "Aberta" : "Fechada"}`);
console.log(alarmeAtivado ? "ALARME DISPARADO!" : "Tudo seguro.");