| 
									
										
										
										
											2020-04-21 09:50:40 +05:30
										 |  |  | --- | 
					
						
							|  |  |  | id: 5e6dd15004c88cf00d2a78b3 | 
					
						
							|  |  |  | title: Loop over multiple arrays simultaneously | 
					
						
							|  |  |  | challengeType: 5 | 
					
						
							| 
									
										
										
										
											2020-06-08 20:07:41 +05:30
										 |  |  | forumTopicId: 385279 | 
					
						
							| 
									
										
										
										
											2021-01-13 03:31:00 +01:00
										 |  |  | dashedName: loop-over-multiple-arrays-simultaneously | 
					
						
							| 
									
										
										
										
											2020-04-21 09:50:40 +05:30
										 |  |  | --- | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-11-27 19:02:05 +01:00
										 |  |  | # --description--
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-04-21 09:50:40 +05:30
										 |  |  | Loop over multiple arrays and create a new array whose $i^{th}$ element is the concatenation of $i^{th}$ element of each of the given. | 
					
						
							| 
									
										
										
										
											2020-11-27 19:02:05 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-04-21 09:50:40 +05:30
										 |  |  | For this example, if you are given this array of arrays: | 
					
						
							| 
									
										
										
										
											2020-11-27 19:02:05 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | `[ ["a", "b", "c"], ["A", "B", "C"], [1, 2, 3] ]` | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-04-21 09:50:40 +05:30
										 |  |  | the output should be: | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-11-27 19:02:05 +01:00
										 |  |  | `["aA1","bB2","cC3"]` | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # --instructions--
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-04-21 09:50:40 +05:30
										 |  |  | Write a function that takes an array of arrays as a parameter and returns an array of strings satisfying the given description. | 
					
						
							| 
									
										
										
										
											2020-11-27 19:02:05 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | # --hints--
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | `loopSimult` should be a function. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ```js | 
					
						
							|  |  |  | assert(typeof loopSimult == 'function'); | 
					
						
							| 
									
										
										
										
											2020-04-21 09:50:40 +05:30
										 |  |  | ``` | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-11-27 19:02:05 +01:00
										 |  |  | `loopSimult([["a", "b", "c"], ["A", "B", "C"], [1, 2, 3]])` should return a array. | 
					
						
							| 
									
										
										
										
											2020-04-21 09:50:40 +05:30
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-11-27 19:02:05 +01:00
										 |  |  | ```js | 
					
						
							|  |  |  | assert( | 
					
						
							|  |  |  |   Array.isArray( | 
					
						
							|  |  |  |     loopSimult([ | 
					
						
							|  |  |  |       ['a', 'b', 'c'], | 
					
						
							|  |  |  |       ['A', 'B', 'C'], | 
					
						
							|  |  |  |       [1, 2, 3] | 
					
						
							|  |  |  |     ]) | 
					
						
							|  |  |  |   ) | 
					
						
							|  |  |  | ); | 
					
						
							|  |  |  | ``` | 
					
						
							| 
									
										
										
										
											2020-04-21 09:50:40 +05:30
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-11-27 19:02:05 +01:00
										 |  |  | `loopSimult([["a", "b", "c"], ["A", "B", "C"], [1, 2, 3]])` should return `["aA1", "bB2", "cC3"]`. | 
					
						
							| 
									
										
										
										
											2020-04-21 09:50:40 +05:30
										 |  |  | 
 | 
					
						
							|  |  |  | ```js | 
					
						
							| 
									
										
										
										
											2020-11-27 19:02:05 +01:00
										 |  |  | assert.deepEqual( | 
					
						
							|  |  |  |   loopSimult([ | 
					
						
							|  |  |  |     ['a', 'b', 'c'], | 
					
						
							|  |  |  |     ['A', 'B', 'C'], | 
					
						
							|  |  |  |     [1, 2, 3] | 
					
						
							|  |  |  |   ]), | 
					
						
							|  |  |  |   ['aA1', 'bB2', 'cC3'] | 
					
						
							|  |  |  | ); | 
					
						
							|  |  |  | ``` | 
					
						
							| 
									
										
										
										
											2020-04-21 09:50:40 +05:30
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-11-27 19:02:05 +01:00
										 |  |  | `loopSimult([["c", "b", "c"], ["4", "5", "C"], [7, 7, 3]])` should return `["c47", "b57", "cC3"]`. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ```js | 
					
						
							|  |  |  | assert.deepEqual( | 
					
						
							|  |  |  |   loopSimult([ | 
					
						
							|  |  |  |     ['c', 'b', 'c'], | 
					
						
							|  |  |  |     ['4', '5', 'C'], | 
					
						
							|  |  |  |     [7, 7, 3] | 
					
						
							|  |  |  |   ]), | 
					
						
							|  |  |  |   ['c47', 'b57', 'cC3'] | 
					
						
							|  |  |  | ); | 
					
						
							|  |  |  | ``` | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | `loopSimult([["a", "b", "c", "d"], ["A", "B", "C", "d"], [1, 2, 3, 4]])` should return `["aA1", "bB2", "cC3", "dd4"]`. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ```js | 
					
						
							|  |  |  | assert.deepEqual( | 
					
						
							|  |  |  |   loopSimult([ | 
					
						
							|  |  |  |     ['a', 'b', 'c', 'd'], | 
					
						
							|  |  |  |     ['A', 'B', 'C', 'd'], | 
					
						
							|  |  |  |     [1, 2, 3, 4] | 
					
						
							|  |  |  |   ]), | 
					
						
							|  |  |  |   ['aA1', 'bB2', 'cC3', 'dd4'] | 
					
						
							|  |  |  | ); | 
					
						
							|  |  |  | ``` | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | `loopSimult([["a", "b"], ["A", "B"], [1, 2]])` should return `["aA1", "bB2"]`. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ```js | 
					
						
							|  |  |  | assert.deepEqual( | 
					
						
							|  |  |  |   loopSimult([ | 
					
						
							|  |  |  |     ['a', 'b'], | 
					
						
							|  |  |  |     ['A', 'B'], | 
					
						
							|  |  |  |     [1, 2] | 
					
						
							|  |  |  |   ]), | 
					
						
							|  |  |  |   ['aA1', 'bB2'] | 
					
						
							|  |  |  | ); | 
					
						
							|  |  |  | ``` | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | `loopSimult([["b", "c"], ["B", "C"], [2, 3]])` should return `["bB2", "cC3"]`. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ```js | 
					
						
							|  |  |  | assert.deepEqual( | 
					
						
							|  |  |  |   loopSimult([ | 
					
						
							|  |  |  |     ['b', 'c'], | 
					
						
							|  |  |  |     ['B', 'C'], | 
					
						
							|  |  |  |     [2, 3] | 
					
						
							|  |  |  |   ]), | 
					
						
							|  |  |  |   ['bB2', 'cC3'] | 
					
						
							|  |  |  | ); | 
					
						
							| 
									
										
										
										
											2020-04-21 09:50:40 +05:30
										 |  |  | ``` | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-11-27 19:02:05 +01:00
										 |  |  | # --seed--
 | 
					
						
							| 
									
										
										
										
											2020-04-21 09:50:40 +05:30
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-11-27 19:02:05 +01:00
										 |  |  | ## --seed-contents--
 | 
					
						
							| 
									
										
										
										
											2020-04-21 09:50:40 +05:30
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-11-27 19:02:05 +01:00
										 |  |  | ```js | 
					
						
							|  |  |  | function loopSimult(A) { | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | ``` | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # --solutions--
 | 
					
						
							| 
									
										
										
										
											2020-04-21 09:50:40 +05:30
										 |  |  | 
 | 
					
						
							|  |  |  | ```js | 
					
						
							|  |  |  | function loopSimult(A) { | 
					
						
							|  |  |  |     var res = [], output; | 
					
						
							|  |  |  |     for (var i = 0; i < A[0].length; i += 1) { | 
					
						
							|  |  |  |         output = ""; | 
					
						
							|  |  |  |         for (var j = 0; j < A.length; j++) | 
					
						
							|  |  |  |             output += A[j][i]; | 
					
						
							|  |  |  |         res.push(output); | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  |     return res; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | ``` |