diff --git a/01-greeting/index.js b/01-greeting/index.js index 8f551af..c1211f1 100644 --- a/01-greeting/index.js +++ b/01-greeting/index.js @@ -1,4 +1,4 @@ export function greet(name) { // implementar logica aqui - return ""; + return "Hello " + name; } diff --git a/02-triangleArea/index.js b/02-triangleArea/index.js index 7628fcd..2c14ebf 100644 --- a/02-triangleArea/index.js +++ b/02-triangleArea/index.js @@ -1,3 +1,3 @@ export function triangleArea(base, height) { - // your code here + return (base*height)/2 } \ No newline at end of file diff --git a/03-maxValue/index.js b/03-maxValue/index.js index e433b31..3e8ba6b 100644 --- a/03-maxValue/index.js +++ b/03-maxValue/index.js @@ -1,4 +1,4 @@ export function maxValue(values) { // implementar logica aqui - + return values?.length ? Math.max(...values) : 0 } \ No newline at end of file diff --git a/04-fibonacci/index.js b/04-fibonacci/index.js index 37c64cc..437e081 100644 --- a/04-fibonacci/index.js +++ b/04-fibonacci/index.js @@ -1,4 +1,13 @@ export function fibonacci(value) { // implementar logica aqui - + let resultado = 0 + let anterior = 0 + let proximo = 1 + + for (let i = 0; i < value; i++) { + resultado = anterior + proximo + anterior = proximo + proximo = resultado + } + return anterior } \ No newline at end of file diff --git a/05-isPrime/index.js b/05-isPrime/index.js index ec9c4ac..b01adbe 100644 --- a/05-isPrime/index.js +++ b/05-isPrime/index.js @@ -1,4 +1,9 @@ export function isPrime(value) { // implementar logica aqui - + for (let i = 2; i < value; i++) + if (value % i === 0) { + return false; + } + + return value > 1 } \ No newline at end of file diff --git a/06-sum/index.js b/06-sum/index.js index ebc2ee1..6828051 100644 --- a/06-sum/index.js +++ b/06-sum/index.js @@ -1,4 +1,9 @@ export function sum(values) { // implementar logica aqui - + let total = 0; + for (let i = 0; i < values.length; i++) { + total += values[i] + } + return total + /* return values.reduce((acumulador, valorAtual) => acumulador + valorAtual, 0) */ } \ No newline at end of file diff --git a/07-sumEven/index.js b/07-sumEven/index.js index bb1e095..bd20228 100644 --- a/07-sumEven/index.js +++ b/07-sumEven/index.js @@ -1,4 +1,10 @@ export function sumEven(value) { // implementar logica aqui - + let total = 0; + for (let i = 0; i < value.length; i++) { + if (value[i] % 2 === 0) { + total += value[i]; + } + } + return total } \ No newline at end of file diff --git a/08-isAnagram/index.js b/08-isAnagram/index.js index 918308a..9e5b929 100644 --- a/08-isAnagram/index.js +++ b/08-isAnagram/index.js @@ -1,4 +1,4 @@ export function isAnagram(word1, word2) { // implementar logica aqui - + return word1.length !== word2.length ? false : word1.toLowerCase().split('').sort().join('') === word2.toLowerCase().split('').sort().join('') } \ No newline at end of file diff --git a/09-mostRepeatedChar/index.js b/09-mostRepeatedChar/index.js index b113ed8..bcd485e 100644 --- a/09-mostRepeatedChar/index.js +++ b/09-mostRepeatedChar/index.js @@ -1,4 +1,9 @@ export function mostUsedChar(text) { // implementar logica aqui - return "" + let strObj = {} + return text.replaceAll(' ', '').toLowerCase().split('').reduce( + (letraAnterior, letraAtual) => { + strObj[letraAtual] = strObj[letraAtual] + 1 || 1 + return strObj[letraAnterior] > strObj[letraAtual] ? letraAnterior : letraAtual + }) } \ No newline at end of file diff --git a/09-mostRepeatedChar/readme.md b/09-mostRepeatedChar/readme.md index da43b50..60f3914 100644 --- a/09-mostRepeatedChar/readme.md +++ b/09-mostRepeatedChar/readme.md @@ -1,6 +1,6 @@ # Desafio 04: caractere mais repetido -Faça um algoritmo que retorne a a letra mias repetida de uma string +Faça um algoritmo que retorne a letra mais repetida de uma string ## Exemplo diff --git a/10-longestWords/index.js b/10-longestWords/index.js index a98d2d8..56ad614 100644 --- a/10-longestWords/index.js +++ b/10-longestWords/index.js @@ -1,4 +1,11 @@ export function longestWords(words) { // implementar logica aqui - + return words.reduce((acumulador, palavraAtual) => { + if (!acumulador.length) acumulador = [palavraAtual]; + else if (palavraAtual.length > acumulador[0].length) + acumulador = [palavraAtual]; + else if (palavraAtual.length === acumulador[0].length) + acumulador = [...acumulador, palavraAtual]; + return acumulador; + }, []) } \ No newline at end of file