1
resposta

[Projeto] 07 Desafio: hora da prática

'====== Desafio 1 ========'

let contador = 0;

function alterarStatus(id) {
    let gameClicado = document.getElementById(`game-${id}`);
    let imagem = gameClicado.querySelector('.dashboard__item__img');
    let botao = gameClicado.querySelector('.dashboard__item__button');
    let nomeJogo = gameClicado.querySelector('.dashboard__item__name');

    if (imagem.classList.contains('dashboard__item__img--rented')) {
        if (!confirmacao()) {
            return; // Cancela a devolução
        }

        imagem.classList.remove('dashboard__item__img--rented');
        botao.classList.remove('dashboard__item__button--return');
        botao.textContent = 'Alugar';
    } else {
        imagem.classList.add('dashboard__item__img--rented');
        botao.classList.add('dashboard__item__button--return');
        botao.textContent = 'Devolver';
        contadorJogosAlugados();
    }
}

function confirmacao() {
    return confirm('Você deseja devolver esse jogo?');
}

function contadorJogosAlugados() {
    contador++;
    console.log(`Já foram alugados ${contador} hoje!`);
}

'====== Desafio 2 ========'

let palavra = prompt("Digite uma palavra:");

function reverterPalavra(p) {
    return p.split("").reverse().join("");
}

if (palavra === reverterPalavra(palavra)) {
    alert(`"${palavra}" é um palíndromo!`);
} else {
    alert(`"${palavra}" não é um palíndromo.`);
}

'====== Desafio 3 ========'

let numbers = [10, 8, 7];

function OrdemNumeros () {
    return numbers.sort((a, b) => a - b)
}
console.log(OrdemNumeros());
1 resposta

Olá, Karoline. Tudo bem?

Muito obrigado por compartilhar o seu código aqui com a gente. Parabéns pelo trabalho. Continue com essa dedicação.

Ótimo como você dividiu e organizou cada desafio, com destaque para o uso do querySelector no primeiro exercício e a clareza da função de verificação de palíndromo no segundo. Você aplicou bem a lógica de condição e manipulação do DOM.

Uma dica interessante para o futuro é usar o método toLowerCase() para deixar a verificação de palíndromo mais flexível, ignorando maiúsculas e minúsculas.Veja este exemplo:


let palavra = prompt("Digite uma palavra:");

function ehPalindromo(p) {
    let limpa = p.toLowerCase();
    return limpa === limpa.split("").reverse().join("");
}

console.log(ehPalindromo("Radar")); // true

Esse código transforma a palavra para minúsculas antes de comparar, tornando a checagem mais robusta.

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