freeCodeCamp/curriculum/challenges/japanese/10-coding-interview-prep/rosetta-code/loop-over-multiple-arrays-s...

2.6 KiB

id title challengeType forumTopicId dashedName
5e6dd15004c88cf00d2a78b3 複数配列に対する同時ループ処理 5 385279 loop-over-multiple-arrays-simultaneously

--description--

複数の配列にループ処理を行い、 与えられた各要素 i^{th} の連結であるi^{th} 要素を持つ新しい配列を作成します。

以下の例では、次の配列の配列が与えられています。

[ ["a", "b", "c"], ["A", "B", "C"], [1, 2, 3] ]

出力は次のようになります。

["aA1","bB2","cC3"]

--instructions--

配列の配列をパラメータとして取り、上記の説明を満たす文字列の配列を返す関数を記述してください。

--hints--

loopSimult は関数とします。

assert(typeof loopSimult == 'function');

loopSimult([["a", "b", "c"], ["A", "B", "C"], [1, 2, 3]]) は配列を返す必要があります。

assert(
  Array.isArray(
    loopSimult([
      ['a', 'b', 'c'],
      ['A', 'B', 'C'],
      [1, 2, 3]
    ])
  )
);

loopSimult([["a", "b", "c"], ["A", "B", "C"], [1, 2, 3]])["aA1", "bB2", "cC3"] を返す必要があります。

assert.deepEqual(
  loopSimult([
    ['a', 'b', 'c'],
    ['A', 'B', 'C'],
    [1, 2, 3]
  ]),
  ['aA1', 'bB2', 'cC3']
);

loopSimult([["c", "b", "c"], ["4", "5", "C"], [7, 7, 3]])["c47", "b57", "cC3"] を返す必要があります。

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]])["aA1", "bB2", "cC3", "dd4"] を返す必要があります。

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]])["aA1", "bB2"] を返す必要があります。

assert.deepEqual(
  loopSimult([
    ['a', 'b'],
    ['A', 'B'],
    [1, 2]
  ]),
  ['aA1', 'bB2']
);

loopSimult([["b", "c"], ["B", "C"], [2, 3]])["bB2", "cC3"] を返す必要があります。

assert.deepEqual(
  loopSimult([
    ['b', 'c'],
    ['B', 'C'],
    [2, 3]
  ]),
  ['bB2', 'cC3']
);

--seed--

--seed-contents--

function loopSimult(A) {

}

--solutions--

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;
}