-
Notifications
You must be signed in to change notification settings - Fork 6.7k
[PTREMOTEES] Naiim Taefy #3840
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
[PTREMOTEES] Naiim Taefy #3840
Changes from all commits
02f6f75
10e8c46
be8180a
919a0d1
f938f6e
f38a644
5f4e174
bb5e21f
88575bd
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change | ||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
@@ -1,119 +1,272 @@ | ||||||||||||||||||||||||
// Iteration #1: Find the maximum | ||||||||||||||||||||||||
function maxOfTwoNumbers() {} | ||||||||||||||||||||||||
|
||||||||||||||||||||||||
|
||||||||||||||||||||||||
function maxOfTwoNumbers(n1, n2) { | ||||||||||||||||||||||||
if (n1 > n2) { | ||||||||||||||||||||||||
return n1; | ||||||||||||||||||||||||
} | ||||||||||||||||||||||||
return n2; | ||||||||||||||||||||||||
} | ||||||||||||||||||||||||
|
||||||||||||||||||||||||
// Iteration #2: Find longest word | ||||||||||||||||||||||||
const words = ['mystery', 'brother', 'aviator', 'crocodile', 'pearl', 'orchard', 'crackpot']; | ||||||||||||||||||||||||
|
||||||||||||||||||||||||
function findLongestWord() {} | ||||||||||||||||||||||||
|
||||||||||||||||||||||||
const words = [ | ||||||||||||||||||||||||
"mystery", | ||||||||||||||||||||||||
"brother", | ||||||||||||||||||||||||
"aviator", | ||||||||||||||||||||||||
"crocodile", | ||||||||||||||||||||||||
"pearl", | ||||||||||||||||||||||||
"orchard", | ||||||||||||||||||||||||
"crackpot", | ||||||||||||||||||||||||
]; | ||||||||||||||||||||||||
|
||||||||||||||||||||||||
function findLongestWord(words) { | ||||||||||||||||||||||||
let word; | ||||||||||||||||||||||||
if (words.length > 0) { | ||||||||||||||||||||||||
for (const separWord of words) { | ||||||||||||||||||||||||
word = !word || word.length < separWord.length ? separWord : word; | ||||||||||||||||||||||||
} | ||||||||||||||||||||||||
} else { | ||||||||||||||||||||||||
word = null; | ||||||||||||||||||||||||
} | ||||||||||||||||||||||||
return word; | ||||||||||||||||||||||||
} | ||||||||||||||||||||||||
|
||||||||||||||||||||||||
// Iteration #3: Calculate the sum | ||||||||||||||||||||||||
const numbers = [6, 12, 1, 18, 13, 16, 2, 1, 8, 10]; | ||||||||||||||||||||||||
|
||||||||||||||||||||||||
function sumNumbers() {} | ||||||||||||||||||||||||
|
||||||||||||||||||||||||
|
||||||||||||||||||||||||
function sumNumbers(numbers) { | ||||||||||||||||||||||||
return sum(numbers); | ||||||||||||||||||||||||
} | ||||||||||||||||||||||||
|
||||||||||||||||||||||||
// Iteration #3.1 Bonus: | ||||||||||||||||||||||||
function sum() {} | ||||||||||||||||||||||||
|
||||||||||||||||||||||||
|
||||||||||||||||||||||||
function sum(numbers) { | ||||||||||||||||||||||||
let sum = 0; | ||||||||||||||||||||||||
for (const number of numbers) { | ||||||||||||||||||||||||
switch (typeof number) { | ||||||||||||||||||||||||
case "string": | ||||||||||||||||||||||||
// sum += !Number.isNaN(Number(number)) ? Number(number) : number.length; | ||||||||||||||||||||||||
sum += number.length; | ||||||||||||||||||||||||
break; | ||||||||||||||||||||||||
case "object": | ||||||||||||||||||||||||
case "array": | ||||||||||||||||||||||||
throw new Error("Unsupported data type sir or ma'am"); | ||||||||||||||||||||||||
default: | ||||||||||||||||||||||||
sum += Number(number); | ||||||||||||||||||||||||
break; | ||||||||||||||||||||||||
} | ||||||||||||||||||||||||
} | ||||||||||||||||||||||||
return sum; | ||||||||||||||||||||||||
} | ||||||||||||||||||||||||
|
||||||||||||||||||||||||
// Iteration #4: Calculate the average | ||||||||||||||||||||||||
// Level 1: Array of numbers | ||||||||||||||||||||||||
const numbersAvg = [2, 6, 9, 10, 7, 4, 1, 9]; | ||||||||||||||||||||||||
|
||||||||||||||||||||||||
function averageNumbers() {} | ||||||||||||||||||||||||
|
||||||||||||||||||||||||
function averageNumbers(numbers) { | ||||||||||||||||||||||||
let sum = 0; | ||||||||||||||||||||||||
for (const number of numbers) { | ||||||||||||||||||||||||
sum += number; | ||||||||||||||||||||||||
} | ||||||||||||||||||||||||
const result = numbers.length > 0 ? sum / numbers.length : null; | ||||||||||||||||||||||||
Comment on lines
+64
to
+68
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
Aplicando lo que has puesto esto seria interesante no?, así te ahorras poner el bucle que ya esta puesto en otro lado! :D |
||||||||||||||||||||||||
return result; | ||||||||||||||||||||||||
} | ||||||||||||||||||||||||
|
||||||||||||||||||||||||
// Level 2: Array of strings | ||||||||||||||||||||||||
const wordsArr = ['seat', 'correspond', 'linen', 'motif', 'hole', 'smell', 'smart', 'chaos', 'fuel', 'palace']; | ||||||||||||||||||||||||
const wordsArr = [ | ||||||||||||||||||||||||
"seat", | ||||||||||||||||||||||||
"correspond", | ||||||||||||||||||||||||
"linen", | ||||||||||||||||||||||||
"motif", | ||||||||||||||||||||||||
"hole", | ||||||||||||||||||||||||
"smell", | ||||||||||||||||||||||||
"smart", | ||||||||||||||||||||||||
"chaos", | ||||||||||||||||||||||||
"fuel", | ||||||||||||||||||||||||
"palace", | ||||||||||||||||||||||||
]; | ||||||||||||||||||||||||
|
||||||||||||||||||||||||
function averageWordLength() { } | ||||||||||||||||||||||||
function averageWordLength(wordsArr) { | ||||||||||||||||||||||||
let sum = 0; | ||||||||||||||||||||||||
for (const word of wordsArr) { | ||||||||||||||||||||||||
sum += word.length; | ||||||||||||||||||||||||
} | ||||||||||||||||||||||||
const result = wordsArr.length > 0 ? sum / wordsArr.length : null; | ||||||||||||||||||||||||
Comment on lines
+87
to
+91
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
Mas de lo mismo no? |
||||||||||||||||||||||||
return result; | ||||||||||||||||||||||||
} | ||||||||||||||||||||||||
|
||||||||||||||||||||||||
// Bonus - Iteration #4.1 | ||||||||||||||||||||||||
function avg() {} | ||||||||||||||||||||||||
function avg(mixArrs) { | ||||||||||||||||||||||||
let sum = 0; | ||||||||||||||||||||||||
for (const mixArr of mixArrs) { | ||||||||||||||||||||||||
if (typeof mixArr === "string") { | ||||||||||||||||||||||||
// sum += !Number.isNaN(Number(mixArr)) ? Number(mixArr) : mixArr.length; | ||||||||||||||||||||||||
sum += mixArr.length; | ||||||||||||||||||||||||
} else { | ||||||||||||||||||||||||
sum += Number(mixArr); | ||||||||||||||||||||||||
} | ||||||||||||||||||||||||
} | ||||||||||||||||||||||||
const result = mixArrs.length > 0 ? sum / mixArrs.length : null; | ||||||||||||||||||||||||
Comment on lines
+97
to
+106
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
And again and again... :D |
||||||||||||||||||||||||
return result; | ||||||||||||||||||||||||
} | ||||||||||||||||||||||||
|
||||||||||||||||||||||||
// Iteration #5: Unique arrays | ||||||||||||||||||||||||
const wordsUnique = [ | ||||||||||||||||||||||||
'crab', | ||||||||||||||||||||||||
'poison', | ||||||||||||||||||||||||
'contagious', | ||||||||||||||||||||||||
'simple', | ||||||||||||||||||||||||
'bring', | ||||||||||||||||||||||||
'sharp', | ||||||||||||||||||||||||
'playground', | ||||||||||||||||||||||||
'poison', | ||||||||||||||||||||||||
'communion', | ||||||||||||||||||||||||
'simple', | ||||||||||||||||||||||||
'bring' | ||||||||||||||||||||||||
"crab", | ||||||||||||||||||||||||
"poison", | ||||||||||||||||||||||||
"contagious", | ||||||||||||||||||||||||
"simple", | ||||||||||||||||||||||||
"bring", | ||||||||||||||||||||||||
"sharp", | ||||||||||||||||||||||||
"playground", | ||||||||||||||||||||||||
"poison", | ||||||||||||||||||||||||
"communion", | ||||||||||||||||||||||||
"simple", | ||||||||||||||||||||||||
"bring", | ||||||||||||||||||||||||
]; | ||||||||||||||||||||||||
|
||||||||||||||||||||||||
function uniquifyArray() {} | ||||||||||||||||||||||||
|
||||||||||||||||||||||||
|
||||||||||||||||||||||||
function uniquifyArray(wordsUnique) { | ||||||||||||||||||||||||
// - Solution with Set | ||||||||||||||||||||||||
// const unifyWords = new Set(wordsUnique); | ||||||||||||||||||||||||
// return [...unifyWords].length > 0 ? [...unifyWords] : null | ||||||||||||||||||||||||
|
||||||||||||||||||||||||
const unifyWords = []; | ||||||||||||||||||||||||
for (const word of wordsUnique) { | ||||||||||||||||||||||||
if(unifyWords.indexOf(word) === -1){ | ||||||||||||||||||||||||
unifyWords.push(word); | ||||||||||||||||||||||||
} | ||||||||||||||||||||||||
} | ||||||||||||||||||||||||
return unifyWords.length > 0 ? unifyWords : null; | ||||||||||||||||||||||||
} | ||||||||||||||||||||||||
|
||||||||||||||||||||||||
// Iteration #6: Find elements | ||||||||||||||||||||||||
const wordsFind = ['machine', 'subset', 'trouble', 'starting', 'matter', 'eating', 'truth', 'disobedience']; | ||||||||||||||||||||||||
|
||||||||||||||||||||||||
function doesWordExist() {} | ||||||||||||||||||||||||
|
||||||||||||||||||||||||
const wordsFind = [ | ||||||||||||||||||||||||
"machine", | ||||||||||||||||||||||||
"subset", | ||||||||||||||||||||||||
"trouble", | ||||||||||||||||||||||||
"starting", | ||||||||||||||||||||||||
"matter", | ||||||||||||||||||||||||
"eating", | ||||||||||||||||||||||||
"truth", | ||||||||||||||||||||||||
"disobedience", | ||||||||||||||||||||||||
]; | ||||||||||||||||||||||||
|
||||||||||||||||||||||||
function doesWordExist(listWords, wordToFind) { | ||||||||||||||||||||||||
let wordFind = false; | ||||||||||||||||||||||||
for (const wordList of listWords) { | ||||||||||||||||||||||||
if(wordList === wordToFind){ | ||||||||||||||||||||||||
wordFind = true | ||||||||||||||||||||||||
} | ||||||||||||||||||||||||
} | ||||||||||||||||||||||||
return listWords.length > 0 ? wordFind : null; | ||||||||||||||||||||||||
} | ||||||||||||||||||||||||
|
||||||||||||||||||||||||
// Iteration #7: Count repetition | ||||||||||||||||||||||||
const wordsCount = [ | ||||||||||||||||||||||||
'machine', | ||||||||||||||||||||||||
'matter', | ||||||||||||||||||||||||
'subset', | ||||||||||||||||||||||||
'trouble', | ||||||||||||||||||||||||
'starting', | ||||||||||||||||||||||||
'matter', | ||||||||||||||||||||||||
'eating', | ||||||||||||||||||||||||
'matter', | ||||||||||||||||||||||||
'truth', | ||||||||||||||||||||||||
'disobedience', | ||||||||||||||||||||||||
'matter' | ||||||||||||||||||||||||
"machine", | ||||||||||||||||||||||||
"matter", | ||||||||||||||||||||||||
"subset", | ||||||||||||||||||||||||
"trouble", | ||||||||||||||||||||||||
"starting", | ||||||||||||||||||||||||
"matter", | ||||||||||||||||||||||||
"eating", | ||||||||||||||||||||||||
"matter", | ||||||||||||||||||||||||
"truth", | ||||||||||||||||||||||||
"disobedience", | ||||||||||||||||||||||||
"matter", | ||||||||||||||||||||||||
]; | ||||||||||||||||||||||||
|
||||||||||||||||||||||||
function howManyTimes() {} | ||||||||||||||||||||||||
|
||||||||||||||||||||||||
function howManyTimes(listWords, wordFind) { | ||||||||||||||||||||||||
let count = 0; | ||||||||||||||||||||||||
for (const word of listWords) { | ||||||||||||||||||||||||
if(word === wordFind){ | ||||||||||||||||||||||||
count++ | ||||||||||||||||||||||||
} | ||||||||||||||||||||||||
} | ||||||||||||||||||||||||
return listWords.length > 0 ? count : 0; | ||||||||||||||||||||||||
|
||||||||||||||||||||||||
} | ||||||||||||||||||||||||
|
||||||||||||||||||||||||
// Iteration #8: Bonus | ||||||||||||||||||||||||
const matrix = [ | ||||||||||||||||||||||||
[8, 2, 22, 97, 38, 15, 0, 40, 0, 75, 4, 5, 7, 78, 52, 12, 50, 77, 91, 8], | ||||||||||||||||||||||||
[49, 49, 99, 40, 17, 81, 18, 57, 60, 87, 17, 40, 98, 43, 69, 48, 4, 56, 62, 0], | ||||||||||||||||||||||||
[81, 49, 31, 73, 55, 79, 14, 29, 93, 71, 40, 67, 53, 88, 30, 3, 49, 13, 36, 65], | ||||||||||||||||||||||||
[ | ||||||||||||||||||||||||
49, 49, 99, 40, 17, 81, 18, 57, 60, 87, 17, 40, 98, 43, 69, 48, 4, 56, 62, | ||||||||||||||||||||||||
0, | ||||||||||||||||||||||||
], | ||||||||||||||||||||||||
[ | ||||||||||||||||||||||||
81, 49, 31, 73, 55, 79, 14, 29, 93, 71, 40, 67, 53, 88, 30, 3, 49, 13, 36, | ||||||||||||||||||||||||
65, | ||||||||||||||||||||||||
], | ||||||||||||||||||||||||
[52, 70, 95, 23, 4, 60, 11, 42, 69, 24, 68, 56, 1, 32, 56, 71, 37, 2, 36, 91], | ||||||||||||||||||||||||
[22, 31, 16, 71, 51, 67, 63, 89, 41, 92, 36, 54, 22, 40, 40, 28, 66, 33, 13, 80], | ||||||||||||||||||||||||
[24, 47, 32, 60, 99, 3, 45, 2, 44, 75, 33, 53, 78, 36, 84, 20, 35, 17, 12, 50], | ||||||||||||||||||||||||
[32, 98, 81, 28, 64, 23, 67, 10, 26, 38, 40, 67, 59, 54, 70, 66, 18, 38, 64, 70], | ||||||||||||||||||||||||
[67, 26, 20, 68, 2, 62, 12, 20, 95, 63, 94, 39, 63, 8, 40, 91, 66, 49, 94, 21], | ||||||||||||||||||||||||
[24, 55, 58, 5, 66, 73, 99, 26, 97, 17, 78, 78, 96, 83, 14, 88, 34, 89, 63, 72], | ||||||||||||||||||||||||
[ | ||||||||||||||||||||||||
22, 31, 16, 71, 51, 67, 63, 89, 41, 92, 36, 54, 22, 40, 40, 28, 66, 33, 13, | ||||||||||||||||||||||||
80, | ||||||||||||||||||||||||
], | ||||||||||||||||||||||||
[ | ||||||||||||||||||||||||
24, 47, 32, 60, 99, 3, 45, 2, 44, 75, 33, 53, 78, 36, 84, 20, 35, 17, 12, | ||||||||||||||||||||||||
50, | ||||||||||||||||||||||||
], | ||||||||||||||||||||||||
[ | ||||||||||||||||||||||||
32, 98, 81, 28, 64, 23, 67, 10, 26, 38, 40, 67, 59, 54, 70, 66, 18, 38, 64, | ||||||||||||||||||||||||
70, | ||||||||||||||||||||||||
], | ||||||||||||||||||||||||
[ | ||||||||||||||||||||||||
67, 26, 20, 68, 2, 62, 12, 20, 95, 63, 94, 39, 63, 8, 40, 91, 66, 49, 94, | ||||||||||||||||||||||||
21, | ||||||||||||||||||||||||
], | ||||||||||||||||||||||||
[ | ||||||||||||||||||||||||
24, 55, 58, 5, 66, 73, 99, 26, 97, 17, 78, 78, 96, 83, 14, 88, 34, 89, 63, | ||||||||||||||||||||||||
72, | ||||||||||||||||||||||||
], | ||||||||||||||||||||||||
[21, 36, 23, 9, 75, 0, 76, 44, 20, 45, 35, 14, 0, 61, 33, 97, 34, 31, 33, 95], | ||||||||||||||||||||||||
[78, 17, 53, 28, 22, 75, 31, 67, 15, 94, 3, 80, 4, 62, 16, 14, 9, 53, 56, 92], | ||||||||||||||||||||||||
[16, 39, 5, 42, 96, 35, 31, 47, 55, 58, 88, 24, 0, 17, 54, 24, 36, 29, 85, 57], | ||||||||||||||||||||||||
[ | ||||||||||||||||||||||||
16, 39, 5, 42, 96, 35, 31, 47, 55, 58, 88, 24, 0, 17, 54, 24, 36, 29, 85, | ||||||||||||||||||||||||
57, | ||||||||||||||||||||||||
], | ||||||||||||||||||||||||
[86, 56, 0, 48, 35, 71, 89, 7, 5, 44, 44, 37, 44, 60, 21, 58, 51, 54, 17, 58], | ||||||||||||||||||||||||
[19, 80, 81, 68, 5, 94, 47, 69, 28, 73, 92, 13, 86, 52, 17, 77, 4, 89, 55, 40], | ||||||||||||||||||||||||
[ | ||||||||||||||||||||||||
19, 80, 81, 68, 5, 94, 47, 69, 28, 73, 92, 13, 86, 52, 17, 77, 4, 89, 55, | ||||||||||||||||||||||||
40, | ||||||||||||||||||||||||
], | ||||||||||||||||||||||||
[4, 52, 8, 83, 97, 35, 99, 16, 7, 97, 57, 32, 16, 26, 26, 79, 33, 27, 98, 66], | ||||||||||||||||||||||||
[88, 36, 68, 87, 57, 62, 20, 72, 3, 46, 33, 67, 46, 55, 12, 32, 63, 93, 53, 69], | ||||||||||||||||||||||||
[4, 42, 16, 73, 38, 25, 39, 11, 24, 94, 72, 18, 8, 46, 29, 32, 40, 62, 76, 36], | ||||||||||||||||||||||||
[20, 69, 36, 41, 72, 30, 23, 88, 34, 62, 99, 69, 82, 67, 59, 85, 74, 4, 36, 16], | ||||||||||||||||||||||||
[20, 73, 35, 29, 78, 31, 90, 1, 74, 31, 49, 71, 48, 86, 81, 16, 23, 57, 5, 54], | ||||||||||||||||||||||||
[1, 70, 54, 71, 83, 51, 54, 69, 16, 92, 33, 48, 61, 43, 52, 1, 89, 19, 67, 48] | ||||||||||||||||||||||||
[ | ||||||||||||||||||||||||
88, 36, 68, 87, 57, 62, 20, 72, 3, 46, 33, 67, 46, 55, 12, 32, 63, 93, 53, | ||||||||||||||||||||||||
69, | ||||||||||||||||||||||||
], | ||||||||||||||||||||||||
[ | ||||||||||||||||||||||||
4, 42, 16, 73, 38, 25, 39, 11, 24, 94, 72, 18, 8, 46, 29, 32, 40, 62, 76, | ||||||||||||||||||||||||
36, | ||||||||||||||||||||||||
], | ||||||||||||||||||||||||
[ | ||||||||||||||||||||||||
20, 69, 36, 41, 72, 30, 23, 88, 34, 62, 99, 69, 82, 67, 59, 85, 74, 4, 36, | ||||||||||||||||||||||||
16, | ||||||||||||||||||||||||
], | ||||||||||||||||||||||||
[ | ||||||||||||||||||||||||
20, 73, 35, 29, 78, 31, 90, 1, 74, 31, 49, 71, 48, 86, 81, 16, 23, 57, 5, | ||||||||||||||||||||||||
54, | ||||||||||||||||||||||||
], | ||||||||||||||||||||||||
[ | ||||||||||||||||||||||||
1, 70, 54, 71, 83, 51, 54, 69, 16, 92, 33, 48, 61, 43, 52, 1, 89, 19, 67, | ||||||||||||||||||||||||
48, | ||||||||||||||||||||||||
], | ||||||||||||||||||||||||
]; | ||||||||||||||||||||||||
|
||||||||||||||||||||||||
function greatestProduct() {} | ||||||||||||||||||||||||
|
||||||||||||||||||||||||
|
||||||||||||||||||||||||
|
||||||||||||||||||||||||
function greatestProduct(listNumbers) { | ||||||||||||||||||||||||
let isNumber; | ||||||||||||||||||||||||
for (const listNumber of listNumbers) { | ||||||||||||||||||||||||
if(uniquifyArray(listNumber).length === 1) { | ||||||||||||||||||||||||
if(uniquifyArray(listNumber)[0] === 1){ | ||||||||||||||||||||||||
isNumber = 1 | ||||||||||||||||||||||||
} else if (uniquifyArray(listNumber)[0] === 2){ | ||||||||||||||||||||||||
isNumber = 16 | ||||||||||||||||||||||||
} | ||||||||||||||||||||||||
}; | ||||||||||||||||||||||||
} | ||||||||||||||||||||||||
return isNumber | ||||||||||||||||||||||||
} | ||||||||||||||||||||||||
|
||||||||||||||||||||||||
// The following is required to make unit tests work. | ||||||||||||||||||||||||
/* Environment setup. Do not modify the below code. */ | ||||||||||||||||||||||||
if (typeof module !== 'undefined') { | ||||||||||||||||||||||||
if (typeof module !== "undefined") { | ||||||||||||||||||||||||
module.exports = { | ||||||||||||||||||||||||
maxOfTwoNumbers, | ||||||||||||||||||||||||
findLongestWord, | ||||||||||||||||||||||||
|
@@ -125,6 +278,6 @@ if (typeof module !== 'undefined') { | |||||||||||||||||||||||
uniquifyArray, | ||||||||||||||||||||||||
doesWordExist, | ||||||||||||||||||||||||
howManyTimes, | ||||||||||||||||||||||||
greatestProduct | ||||||||||||||||||||||||
greatestProduct, | ||||||||||||||||||||||||
}; | ||||||||||||||||||||||||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Entiendo que lo hayas puesto pero si sacas por consola el typeof de un array te dira que es un object, cositas de javascript que estan "mal" jejejeje