1
resposta

desafio

// 1. Função que valida se um número é positivo, negativo ou zero
function validarNumero(num) {
    if (num > 0) {
        return "Positivo";
    } else if (num < 0) {
        return "Negativo";
    } else {
        return "Zero";
    }
}

console.log(validarNumero(10)); // Positivo
console.log(validarNumero(-5)); // Negativo
console.log(validarNumero(0)); // Zero

// 2. Função que verifica se uma pessoa é maior de idade
function maiorDeIdade(idade) {
    return idade >= 18 ? "Maior de idade" : "Menor de idade";
}

console.log(maiorDeIdade(20)); // Maior de idade
console.log(maiorDeIdade(16)); // Menor de idade

// 3. Função que valida se uma string é vazia
function stringVazia(str) {
    return str.trim() === "" ? "String vazia" : "String não vazia";
}

console.log(stringVazia(" ")); // String vazia
console.log(stringVazia("Olá")); // String não vazia

// 4. Função que determina se um ano é bissexto
function anoBissexto(ano) {
    return (ano % 4 === 0 && ano % 100 !== 0) || ano % 400 === 0;
}

console.log(anoBissexto(2024)); // true
console.log(anoBissexto(1900)); // false
console.log(anoBissexto(2000)); // true

// 5. Função que calcula a média de dois números, interrompendo se um não for válido
function calcularMedia(a, b) {
    if (typeof a !== "number" || typeof b !== "number") {
        return "Entrada inválida!";
    }
    return (a + b) / 2;
}

console.log(calcularMedia(10, 20)); // 15
console.log(calcularMedia(10, "a")); // Entrada inválida!

// 6. Função que retorna o tamanho de um array
function tamanhoArray(arr) {
    return arr.length;
}

console.log(tamanhoArray([1, 2, 3, 4])); // 4

// 7. Usando includes para verificar se um elemento está no array
let numeros = [1, 2, 3, 4, 5];
console.log(numeros.includes(3)); // true
console.log(numeros.includes(10)); // false

// 8. Função que verifica se um elemento está presente no array
function elementoPresente(arr, elemento) {
    return arr.includes(elemento);
}

console.log(elementoPresente(numeros, 2)); // true
console.log(elementoPresente(numeros, 7)); // false

// 9. Usando includes para verificar se uma string está no array de strings
let palavras = ["maçã", "banana", "uva"];
console.log(palavras.includes("banana")); // true
console.log(palavras.includes("laranja")); // false

// 10. Função que verifica se um estudante está na lista de alunos
function estudantePresente(alunos, estudante) {
    return alunos.some(aluno => aluno.nome === estudante.nome && aluno.idade === estudante.idade);
}

let estudantes = [
    { nome: "Ana", idade: 20 },
    { nome: "João", idade: 22 },
    { nome: "Carlos", idade: 19 }
];

console.log(estudantePresente(estudantes, { nome: "Ana", idade: 20 })); // true
console.log(estudantePresente(estudantes, { nome: "Pedro", idade: 25 })); // false

// 11. Função que retorna a soma dos números pares e o produto dos ímpares
function somaParesProdutoImpares(arr) {
    let somaPares = 0;
    let produtoImpares = 1;
    let temImpar = false;

    arr.forEach(num => {
        if (num % 2 === 0) {
            somaPares += num;
        } else {
            produtoImpares *= num;
            temImpar = true;
        }
    });

    return {
        somaPares,
        produtoImpares: temImpar ? produtoImpares : 0 // Evita retornar 1 se não houver ímpares
    };
}

console.log(somaParesProdutoImpares([2, 3, 4, 5])); // { somaPares: 6, produtoImpares: 15 }
console.log(somaParesProdutoImpares([2, 4, 6])); // { somaPares: 12, produtoImpares: 0 }
1 resposta

Bom dia!

Sua resolução ficou excelente! Você fez um ótimo uso do aprendizado.

Parabéns pelo empenho nos estudos e continue praticando.

Para que mais pessoas consigam visualizar a sua solução proposta, é recomendado que você marque este tópico como solucionado. Assim pode ajudar ainda mais pessoas :)

Bons estudos!