diff --git a/desafio-03/joseildoandrade12/javascript/README.md b/desafio-03/joseildoandrade12/javascript/README.md index 52f8e1d3a..aff5161e8 100644 --- a/desafio-03/joseildoandrade12/javascript/README.md +++ b/desafio-03/joseildoandrade12/javascript/README.md @@ -8,8 +8,10 @@ Primeiro passo: defini uma variável com um valor vazio de array para colocar os Segundo passo: criei uma Função com dois parâmetros min(valor mínimo) e max(valor máximo). -Terceiro passo: criei um loop que caso min fosse menor ou igual a max, ocorresse uma validação. +Terceiro passo: fazer uma verificação se os valores min e max estão nas caracteristicas necessárias onde caso não tenha irá passar uma mensagem mostrando o erro do úsuario -Quarto passo: criei uma constante numInverso, onde os valores que passaram na condição vão passar pelo método toString() tornando o Number numa string e logo em seguida com esse valor em String utilizando o método split('') que irá transformar a string numa array separando pelo valor que está sendo atribuito nos paresenteses, após isso utilizei o método de array reverse() para os valores que estão na array reverterem(quem está no inicio vai para o final e quem está no final vai para o inicio e assim por diante), e depois utilizei o split('') que irá juntar os valores da array pela condição que está no método tornando essa junção em uma String novamente. +Quarto passo: criei um loop que caso min fosse menor ou igual a max, ocorresse uma validação. -Quinto passo: fazer uma validação com um if, se o valor min é igual ao valor que está em numInverso, ele vai adicionar o valor de min a váriavel que criei no inicio da solução pelo método de array variavel.push(valor). +Quinto passo: criei uma constante numInverso, onde os valores que passaram na condição vão passar pelo método toString() tornando o Number numa string e logo em seguida com esse valor em String utilizando o método split('') que irá transformar a string numa array separando pelo valor que está sendo atribuito nos paresenteses, após isso utilizei o método de array reverse() para os valores que estão na array reverterem(quem está no inicio vai para o final e quem está no final vai para o inicio e assim por diante), e depois utilizei o split('') que irá juntar os valores da array pela condição que está no método tornando essa junção em uma String novamente. + +Sexto passo: fazer uma validação com um if, se o valor min é igual ao valor que está em numInverso, ele vai adicionar o valor de min a váriavel que criei no inicio da solução pelo método de array variavel.push(valor). diff --git a/desafio-03/joseildoandrade12/javascript/script.js b/desafio-03/joseildoandrade12/javascript/script.js index 1512e584e..318fe7343 100644 --- a/desafio-03/joseildoandrade12/javascript/script.js +++ b/desafio-03/joseildoandrade12/javascript/script.js @@ -1,11 +1,21 @@ -let numerosPalidromos = []; +const numerosPalidromos = []; function palindromos(min, max) { - for (; min <= max; min++) { - const numInverso = min.toString().split("").reverse().join(""); - if (min == numInverso) { - numerosPalidromos.push(min); + if (min < 1 || max < 1) { + console.log("Adicione apenas valores positivos ou maior que 0"); + } else if (min >= max) { + console.log( + "O valor mínimo não pode ser maior ou igual ao valor máximo" + ); + } else if (!(Number.isInteger(min) && Number.isInteger(max))) { + console.log("Adicione apenas números inteiros"); + } else { + for (; min <= max; min++) { + const numInverso = +min.toString().split("").reverse().join(""); + if (min === numInverso) { + numerosPalidromos.push(min); + } } } } -palindromos(1, 2000); +palindromos(1.1, 100); console.log(numerosPalidromos);