@@ -16,33 +16,75 @@ function maxOfTwoNumbers(number1, number2) {
16
16
// Iteration #2: Find longest word
17
17
const words = [ 'mystery' , 'brother' , 'aviator' , 'crocodile' , 'pearl' , 'orchard' , 'crackpot' ] ;
18
18
19
- function findLongestWord ( ) { }
20
-
19
+ function findLongestWord ( arr ) {
20
+ if ( ! arr ) return ;
21
+ let lengths = words . map ( word => word . length ) ;
22
+ return Math . max ( ...lengths ) ;
23
+ }
24
+ findLongestWord ( words ) ;
21
25
22
26
23
27
// Iteration #3: Calculate the sum
24
28
const numbers = [ 6 , 12 , 1 , 18 , 13 , 16 , 2 , 1 , 8 , 10 ] ;
25
29
26
- function sumNumbers ( ) { }
27
-
30
+ function sumNumbers ( arr ) {
31
+ if ( ! arr ) return 0 ;
32
+ let sum = 0 ;
33
+ for ( let i = 0 ; i < arr . length ; i ++ ) {
34
+ sum = sum + arr [ i ] ;
35
+ }
36
+ return sum ;
37
+ }
38
+ sumNumbers ( numbers ) ;
28
39
29
40
30
41
// Iteration #3.1 Bonus:
31
- function sum ( ) { }
42
+ const mixedArr = [ 6 , 12 , 'miami' , 1 , true , 'barca' , '200' , 'lisboa' , 8 , 10 ] ;
43
+
44
+ // should return: 57
45
+ function sum ( str ) {
46
+
47
+
48
+ let sumOfAString = 0 ;
49
+ let addAString = str . split ( ' ' ) ;
50
+ for ( let i = 0 ; i < str . length ; i ++ ) {
51
+ sumOfAString = sumOfAString + str [ i ] ;
52
+ }
53
+ return sumOfAString ;
54
+ }
55
+ sum ( mixedArr ) ;
56
+
32
57
33
58
34
59
35
60
// Iteration #4: Calculate the average
36
61
// Level 1: Array of numbers
37
62
const numbersAvg = [ 2 , 6 , 9 , 10 , 7 , 4 , 1 , 9 ] ;
38
63
39
- function averageNumbers ( ) { }
40
-
64
+ function averageNumbers ( array ) {
65
+ if ( ! array . length ) return ;
66
+
67
+ for ( let summ = 0 , i = 0 ; i < array . length ; i ++ ) {
68
+ summ += array [ i ] ;
69
+ }
70
+ return summ / array . length ;
71
+ }
72
+ averageNumbers ( numbersAvg ) ;
41
73
42
74
// Level 2: Array of strings
43
75
const wordsArr = [ 'seat' , 'correspond' , 'linen' , 'motif' , 'hole' , 'smell' , 'smart' , 'chaos' , 'fuel' , 'palace' ] ;
44
76
45
- function averageWordLength ( ) { }
77
+ function averageWordLength ( arr ) {
78
+ for ( let wordsInArr of arr ) {
79
+ let lengthArr = wordsInArr . length ;
80
+ let sUmOfEachWord = 0 ;
81
+ sUmOfEachWord += arr [ i ] ;
82
+ let avgWLength = sUmOfEachWord / lengthArr ;
83
+ return avgWLength ;
84
+
85
+ }
86
+ }
87
+ averageWordLength ( wordsArr ) ;
46
88
47
89
// Bonus - Iteration #4.1
48
90
function avg ( ) { }
@@ -62,8 +104,16 @@ const wordsUnique = [
62
104
'bring'
63
105
] ;
64
106
65
- function uniquifyArray ( ) { }
66
-
107
+ function uniquifyArray ( arr ) {
108
+ let removedDuplicates = [ ] ;
109
+ for ( let i = 0 ; i < arr . length ; i ++ ) {
110
+ if ( removedDuplicates . indexOf ( arr [ i ] ) === - 1 ) {
111
+ removedDuplicates . push ( arr [ i ] ) ;
112
+ }
113
+ }
114
+ return removedDuplicates ;
115
+ }
116
+ uniquifyArray ( wordsUnique ) ;
67
117
68
118
69
119
// Iteration #6: Find elements
0 commit comments