# exercícios lógica de programção 27/07 ## Questão 1. Faça um programa que imprima os 100 primeiros números ímpares. ``` javascript let num = 1; while (num < 99) { console.log(num) num += 2 } ``` ## Questão 2. Faça um programa que imprima a taboada do 4. ``` javascript let x = 0; while (x <= 10) { console.log(`4 x ${x} = ${4*x}`); x++ } ``` ## Questão 3. Faça um programa que filtre uma lista, criando uma nova, em que permanecem apenas as palavras terminadas com a letra A. ``` javascript const palavras = ["Casa", "Cabelo", "Anjo", "Menina", "Saia", "Humano"]; let palavrasA = []; let y = 0; while (y < palavras.length) { let palavra = palavras[y]; if (palavra.slice(-1) === "a") { palavrasA.push(palavra) } y++ } console.log(palavrasA) ``` ## Questão 4. Faça um programa que identifique o menor item de uma lista numérica. ``` javascript const numeros = [-3, 4, 11, -9, 7, -15, 21]; let menor = numeros[0]; for (let i = 0; i < numeros.length; i++) { if (menor <= numeros[i]) { continue; } else { menor = numeros[i]; } } console.log(menor) ``` ## Questão 5. Os divisores de um número X são os números que dividem X sem deixar resto. Faça um programa que calcula os divisores de um número. ``` javascript const numero = 8 let index = numero; let num2 = index; while (index != 0) { if (numero % index === 0) { console.log(index) } index-- } ``` ## Questão 6. Um número primo é aquele que tem apenas dois divisores: ele mesmo e um. Faça um programa que diga se um determinado número é primo. Faça o programa que testa apenas um número, e rode o programa uma vez para cada uma das opcoes abaixo: ``` javascript // !!! essa não consegui resolver !! de qualquer forma, aí vai minha tentativa (ou uma delas, pelo menos) //casos de teste const x = 3; //sim //const x = 5; //sim //const x = 6; //nao //const x = 7; //sim //const x = 2; //sim //const x = 8; //nao //const x = 1; //nao let divisores = [] for (let i = x; i != 0; i--) { let y = x % i; divisores.push(y); } console.log(divisores); console.log(divisores.length); for (let indice = 0; indice < divisores.length; indice++) { if (divisores[indice] == 0) { if (indice == divisores.length - 1) { console.log("não é primo") break; } else { continue; } } else if (divisores[indice] != 0) { if (indice == divisores.length - 1) { console.log("é primo") break; } else { continue; } } } ```