forked from M3-Academy/challenge-algorithms-v2.0
Merge pull request 'development' (#11) from development into master
Reviewed-on: #11
This commit is contained in:
commit
97fb92c06a
@ -1,4 +1,4 @@
|
||||
export function greet(name) {
|
||||
// implementar logica aqui
|
||||
return "";
|
||||
return `Hello ${name}`;
|
||||
}
|
||||
|
@ -1,3 +1,4 @@
|
||||
export function triangleArea(base, height) {
|
||||
// your code here
|
||||
let area = (base * height) / 2;
|
||||
return area;
|
||||
}
|
@ -1,4 +1,13 @@
|
||||
export function maxValue(values) {
|
||||
// implementar logica aqui
|
||||
|
||||
let max = values[0];
|
||||
if (values.length === 0) {
|
||||
return 0;
|
||||
} else {
|
||||
for (let index = 0; index <= values.length; index++) {
|
||||
if (max < values[index]) {
|
||||
max = values[index];
|
||||
}
|
||||
}
|
||||
return max;
|
||||
}
|
||||
}
|
@ -1,4 +1,15 @@
|
||||
export function fibonacci(value) {
|
||||
// implementar logica aqui
|
||||
|
||||
let vet = [];
|
||||
vet.push(0);
|
||||
vet.push(1);
|
||||
if (value == 0) {
|
||||
return vet[0];
|
||||
} else if (value == 1) {
|
||||
return vet[1];
|
||||
} else {
|
||||
for (let index = 2; index <= value; index++) {
|
||||
vet[index] = vet[index - 2] + vet[index - 1];
|
||||
}
|
||||
}
|
||||
return vet.at(-1);
|
||||
}
|
@ -1,39 +1,39 @@
|
||||
import { fibonacci } from "."
|
||||
import { fibonacci } from ".";
|
||||
|
||||
describe('fibonacci', () => {
|
||||
it('Dever retornar 0 quando passamos o valor 0', () => {
|
||||
expect(fibonacci(0)).toBe(0)
|
||||
})
|
||||
describe("fibonacci", () => {
|
||||
it("Dever retornar 0 quando passamos o valor 0", () => {
|
||||
expect(fibonacci(0)).toBe(0);
|
||||
});
|
||||
|
||||
it('Dever retornar 1 quando passamos o valor 1', () => {
|
||||
expect(fibonacci(1)).toBe(1)
|
||||
})
|
||||
it("Dever retornar 1 quando passamos o valor 1", () => {
|
||||
expect(fibonacci(1)).toBe(1);
|
||||
});
|
||||
|
||||
it('Dever retornar 1 quando passamos o valor 2', () => {
|
||||
expect(fibonacci(2)).toBe(1)
|
||||
})
|
||||
it("Dever retornar 1 quando passamos o valor 2", () => {
|
||||
expect(fibonacci(2)).toBe(1);
|
||||
});
|
||||
|
||||
it('Dever retornar 2 quando passamos o valor 3', () => {
|
||||
expect(fibonacci(3)).toBe(2)
|
||||
})
|
||||
it("Dever retornar 2 quando passamos o valor 3", () => {
|
||||
expect(fibonacci(3)).toBe(2);
|
||||
});
|
||||
|
||||
it('Dever retornar 3 quando passamos o valor 4', () => {
|
||||
expect(fibonacci(4)).toBe(3)
|
||||
})
|
||||
it("Dever retornar 3 quando passamos o valor 4", () => {
|
||||
expect(fibonacci(4)).toBe(3);
|
||||
});
|
||||
|
||||
it('Dever retornar 5 quando passamos o valor 5', () => {
|
||||
expect(fibonacci(5)).toBe(5)
|
||||
})
|
||||
it("Dever retornar 5 quando passamos o valor 5", () => {
|
||||
expect(fibonacci(5)).toBe(5);
|
||||
});
|
||||
|
||||
it('deve retonar 8 quando passamos o valor 6', () => {
|
||||
expect(fibonacci(6)).toBe(8)
|
||||
})
|
||||
it("deve retonar 8 quando passamos o valor 6", () => {
|
||||
expect(fibonacci(6)).toBe(8);
|
||||
});
|
||||
|
||||
it('Dever retornar 9227465 quando passamos o valor 35', () => {
|
||||
expect(fibonacci(35)).toBe(9227465)
|
||||
})
|
||||
it("Dever retornar 9227465 quando passamos o valor 35", () => {
|
||||
expect(fibonacci(35)).toBe(9227465);
|
||||
});
|
||||
|
||||
it('Dever retornar 1836311903 quando passamos o valor 46', () => {
|
||||
expect(fibonacci(46)).toBe(1836311903)
|
||||
})
|
||||
})
|
||||
it("Dever retornar 1836311903 quando passamos o valor 46", () => {
|
||||
expect(fibonacci(46)).toBe(1836311903);
|
||||
});
|
||||
});
|
||||
|
@ -1,4 +1,13 @@
|
||||
export function isPrime(value) {
|
||||
// implementar logica aqui
|
||||
|
||||
let contador = 0;
|
||||
for (let index = 0; index <= value; index++) {
|
||||
if (value % index === 0) {
|
||||
contador = contador + 1;
|
||||
}
|
||||
}
|
||||
if (contador === 2) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
@ -1,4 +1,7 @@
|
||||
export function sum(values) {
|
||||
// implementar logica aqui
|
||||
|
||||
let soma = 0;
|
||||
for (let index = 0; index < values.length; index++) {
|
||||
soma = soma + values[index];
|
||||
}
|
||||
return soma;
|
||||
}
|
@ -5,7 +5,7 @@ Faça um algoritmo que retorne a soma de todos os números de um array
|
||||
## Exemplo
|
||||
|
||||
```js
|
||||
sum([1, 2, 3, 4, 5]) // 15
|
||||
sum([10, 10, 10, 10]) // 40
|
||||
sum([1, 2, 3, 4, 5, 6, 7, 8, 9, 10]) // 55
|
||||
sum([1, 2, 3, 4, 5]); // 15
|
||||
sum([10, 10, 10, 10]); // 40
|
||||
sum([1, 2, 3, 4, 5, 6, 7, 8, 9, 10]); // 55
|
||||
```
|
@ -1,4 +1,9 @@
|
||||
export function sumEven(value) {
|
||||
// implementar logica aqui
|
||||
|
||||
let somaPares = 0;
|
||||
for (let index = 0; index < value.length; index++) {
|
||||
if (value[index] % 2 === 0) {
|
||||
somaPares = somaPares + value[index];
|
||||
}
|
||||
}
|
||||
return somaPares;
|
||||
}
|
@ -1,4 +1,22 @@
|
||||
export function isAnagram(word1, word2) {
|
||||
// implementar logica aqui
|
||||
|
||||
let word1Lower = Array.from(word1.toLowerCase());
|
||||
let word2Lower = Array.from(word2.toLowerCase());
|
||||
if (word1Lower.length !== word2Lower.length) {
|
||||
return false;
|
||||
}
|
||||
let contador = 0;
|
||||
while (word1.length !== contador) {
|
||||
let letraword2 = word2Lower[0];
|
||||
if (word1Lower.indexOf(letraword2) !== -1) {
|
||||
let indice = word1Lower.indexOf(letraword2);
|
||||
word1Lower.splice(indice, 1);
|
||||
word2Lower.shift();
|
||||
}
|
||||
contador = contador + 1;
|
||||
}
|
||||
if (word1Lower.length === 0 && word2Lower.length === 0) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
@ -5,9 +5,7 @@ Faça um algoritmo que retorne se um palavra é anagram da outra
|
||||
## Exemplo
|
||||
|
||||
```js
|
||||
|
||||
isAnagram('roma', 'amor') // true
|
||||
isAnagram('roma', 'amora') // false
|
||||
isAnagram('roma', 'amora') // false
|
||||
|
||||
isAnagram("roma", "amor"); // true
|
||||
isAnagram("roma", "amora"); // false
|
||||
isAnagram("roma", "amora"); // false
|
||||
```
|
@ -1,4 +1,28 @@
|
||||
export function mostUsedChar(text) {
|
||||
// implementar logica aqui
|
||||
return ""
|
||||
let vetChar = [];
|
||||
let qtdCharAtual = 0;
|
||||
let charAtual = "";
|
||||
let qtdCharMaior = 0;
|
||||
let charMaior = "";
|
||||
for (let index = 0; index < text.length; index++) {
|
||||
const element = text[index];
|
||||
if (!vetChar.includes(element)) {
|
||||
vetChar.push(element);
|
||||
}
|
||||
}
|
||||
for (let chave = 0; chave <= vetChar.length; chave++) {
|
||||
charAtual = vetChar[chave];
|
||||
qtdCharAtual = 0;
|
||||
for (let index = 0; index <= text.length; index++) {
|
||||
if (vetChar[chave] === text[index]) {
|
||||
qtdCharAtual = qtdCharAtual + 1;
|
||||
}
|
||||
if (qtdCharMaior < qtdCharAtual && vetChar[chave] !== text[index]) {
|
||||
charMaior = charAtual;
|
||||
qtdCharMaior = qtdCharAtual;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return charMaior;
|
||||
}
|
@ -1,4 +1,15 @@
|
||||
export function longestWords(words) {
|
||||
// implementar logica aqui
|
||||
let vetWords = [];
|
||||
|
||||
for (let index = 0; index < words.length; index++) {
|
||||
if (vetWords.length === 0) {
|
||||
vetWords.push(words[index]);
|
||||
} else if (vetWords[0].length < words[index].length) {
|
||||
vetWords = [];
|
||||
vetWords.push(words[index]);
|
||||
} else if (vetWords[0].length === words[index].length) {
|
||||
vetWords.push(words[index]);
|
||||
}
|
||||
}
|
||||
return vetWords;
|
||||
}
|
Loading…
Reference in New Issue
Block a user