A satisfação de fazer um código funcionar
Opa, olá a todos, essa é minha primeira publicação aqui, cai de paraquedas em uma publicação do Filipe no YouTube há um tempo e venho acompanhando desde então. Queria compartilhar com vocês a satisfação de ter feito o primeiro exercício/teste e conseguido resolver depois de pensar um tanto e sem procurar sobre na internet.
Foi pedido que elaborasse uma função que ao chamar e passar um número, a função diria se o número é primo ou não. Comecei ontem de noite tentando fazer alguma forma de validar o número e devolver como true ou false, sem uma variável de array, não deu muito certo haha, e hoje mais cedo, aqui no trabalho mesmo, pensando toda hora nisso, cheguei no resultado abaixo finalmente!
Para a maioria aqui, isso deve ser uma coisa bem boba, e simples, mas caras, para mim, que começou a fazer isso essa semana, estou me sentindo o próprio hackerman haha!
😅 Segue meu humilde código:
<html>
<script>
function verficarNumeroPrimo(numero) {
var divisores = [];
for (i = 1; i <= numero; i++) {
if (numero % i === 0) {
divisores.push(i);
}
}
if (divisores.length > 2 || numero <= 1) {
return "O número " + numero + " não é primo!";
} else {
return "O número " + numero + " é primo!";
}
}
</script>
</html>
Bom, é isso, malz o texto longo. A quem souber uma solução mais simples, ou com menos código, fico feliz se puder me falar, mas não necessariamente dando a resposta, mas dando alguma dica ou direção para que eu pense aqui. XD
Há se tiver algo errado também pode criticar ai quero aprender mais, então só manda hahaha!
Parabéns pela conquista! É realmente gratificante resolver um exercício que fez a gente quebrar a cabeça, eu támbem já fiz esse exercício e quebrei muito a cabeça pra resolver.
Uma dica: Em vez disso:
console.log("O número " + numero + "é primo!")
Você pode usar crases ao invés de aspas e colocar a variável dentro de ${}, assim:
console.log(`O número ${numero} é primo!`)
se você quiser dá uma aprofundada, Template strings.
Como sempre, é bom a gente sempre revisar e revisar as coisas, um bocado de vezes, escrevi verficar
ao invés de verificar
ali no nome da função, perdão pelo vacilo 😁
Edit: Também vi revisando e comentando no código que é mais lógico eu usar (divisores.length !== 2)
do que (divisores.length > 2 || numero <= 1)
. 🤷🏽♀️