Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Desafios: hora da prática

1 - Crie uma função que valide se um número é positivo, negativo ou zero.

function verificarPositivoNegativo(numero) {
    let verificaçao = numero

    if (verificaçao < 0) {
        alert(`O número ${numero} é negativo.`);
    } else if (verificaçao > 0) {
        alert(`O número ${numero} é positivo.`);
    } else {
        alert(`O número ${numero} é igual a zero`)
    }
}

verificarPositivoNegativo(0);

2 - Implemente uma função que verifique se uma pessoa é maior de idade.

function verificarIdade(idade) {
    let verificaçao = idade

    if (verificaçao >= 18) {
        alert('Maior de idade.');
    } else {
        alert('Menor de idade.')
    }
}


verificarIdade(17);

3- Desenvolva uma função que valide se uma string é vazia ou não.

function verificarString(informaçao) {
    return informaçao == '' ? 'String vazia' : 'String com conteúdo';
}

console.log(verificarString('ok'))

4 -Crie uma função que determine se um ano é bissexto

Não entendi a lógica desse código e só copiei aqui. Alguém pode me explicar?

function verificarAnoBissexto(ano) {
    if ((ano % 4 === 0 && ano % 100 !== 0) || ano % 400 === 0) {
        return "Ano bissexto";
    } else {
        return "Não é bissexto";
    }
}

console.log(verificarAnoBissexto(2025))

5 - Implemente uma função que calcule a média de dois números, interrompendo a execução se algum dos números não for válido.

function calcularMedia(x, y) {
    if (isNaN(x) || isNaN(y)) {
        return;
    }
    
    return (x + y) / 2;
}

console.log(calcularMedia(5, 10));

6 - Desenvolva uma função que receba um array como parâmetro e retorne o seu tamanho.

let listaJogos = [];
listaJogos.push('Undertale' , 'Disco Elysium', 'Hyper Light Drifter', 'Citzen Sleeper');

console.log(listaJogos);

function verificarTamanhoLista(array) {
    return array.length
}

console.log(verificarTamanhoLista(listaJogos));

7- Crie um array e utilize a função includes para verificar se um elemento específico está presente

let listaJogos = [];
listaJogos.push('Undertale' , 'Disco Elysium', 'Hyper Light Drifter', 'Citzen Sleeper');

console.log(listaJogos);

function verificarElementoLista(array) {
    return array.includes('Disco Elysium')? 'Disco Elysium está na lista' : 'Disco Elysium não está na lista'
}

console.log(verificarElementoLista(listaJogos));

8 - Implemente uma função que receba um array e um elemento, e retorne se o elemento está presente no array.

let listaJogos = [];
listaJogos.push('Undertale' , 'Disco Elysium', 'Hyper Light Drifter', 'Citzen Sleeper');

console.log(listaJogos);

function verificarElementoLista(array, elemento) {
    return array.includes(elemento)? 'O elemento está na lista' : 'O elemento não está na lista'
}

console.log(verificarElementoLista(listaJogos, 'Undertale'));

9 - Crie um array de strings e utilize includes para verificar se uma determinada string está presente.

let listaJogos = [];
listaJogos.push('Undertale' , 'Disco Elysium', 'Hyper Light Drifter', 'Citzen Sleeper');

console.log('A lista contem o jogo Citzen Sleeper?', listaJogos.includes('Citzen Sleeper'));

10 - Desenvolva uma função que receba um array de objetos representando estudantes de um curso e um objeto que representa um estudante procurado. Depois retorne se o objeto está presente no array.

11- Crie uma função que receba um array de números e retorne a soma dos elementos pares e o produto dos elementos ímpares.

let listaNumeros = [1,2,3,4,5,6,7,8,9,10];

function SomaEProdutoLista(array) {
    let somaPares = 0;
    let produtoImpares = 1;

    for (let numero of array) {
        if (numero % 2 === 0) {
            somaPares += numero
        } else {
            produtoImpares *= numero;
        }
    }

    return {
        somaPares,
        produtoImpares
    };
}

console.log(SomaEProdutoLista(listaNumeros));
2 respostas
solução!

Oi Felipe!

Parabéns pelos resultados, seus códigos estão bacanas, muito bem!

Sobre a lógica para determinar se um ano é bissexto. Um ano é considerado bissexto se ele atende a um dos seguintes critérios:

  • É divisível por 4, mas não por 100.
  • Ou é divisível por 400.

Seu código está assim:

function verificarAnoBissexto(ano) {
    if ((ano % 4 === 0 && ano % 100 !== 0) || ano % 400 === 0) {
        return "Ano bissexto";
    } else {
        return "Não é bissexto";
    }
}

console.log(verificarAnoBissexto(2025))

A lógica é a seguinte:

  • ano % 4 === 0 verifica se o ano é divisível por 4.
  • ano % 100 !== 0 verifica se o ano não é divisível por 100.

Se ambos forem verdadeiros, o ano é bissexto.

Ou(||) se é divisível por 400:

  • ano % 400 === 0

Se for verdadeiro, o ano é bissexto.

Exemplos:

  • Ano 2024:

    • 2024 % 4 === 0 é verdadeiro.
    • 2024 % 100 !== 0 é verdadeiro.
    • Portanto, 2024 é um ano bissexto.
  • Ano 1900:

    • 1900 % 4 === 0 é verdadeiro.
    • 1900 % 100 !== 0 é falso.
    • 1900 % 400 === 0 é falso.
    • Portanto, 1900 não é um ano bissexto.
  • Ano 2000:

    • 2000 % 4 === 0 é verdadeiro.
    • 2000 % 100 !== 0 é falso.
    • 2000 % 400 === 0 é verdadeiro.
    • Portanto, 2000 é um ano bissexto.

A titulo de curiosidade recomendo a leitura dos seguintes materiais:

Espero ter ajudado e reforço que em casos de dúvidas, conte sempre com o fórum da comunidade Alura! Bons estudos!

Sucesso

Um grande abraço e até mais!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Muito obrigado pela explicação Victor! Consegui entender agora