1
exercism fetch javascript transpose

Transpose

Given an input text output it transposed.

Roughly explained, the transpose of a matrix:

1
2
ABC
DEF

is given by:

1
2
3
AD
BE
CF

Rows become columns and columns become rows. See https://en.wikipedia.org/wiki/Transpose.

If the input has rows of different lengths, this is to be solved as follows:

Therefore, transposing this matrix:

1
2
ABC
DE

results in:

1
2
3
AD
BE
C

And transposing:

1
2
AB
DEF

results in:

1
2
3
AD
BE
 F

In general, all characters from the input should also be present in the transposed output. That means that if a column in the input text contains only spaces on its bottom-most row(s), the corresponding output row should contain the spaces in its right-most column(s).

Setup

Go through the setup instructions for JavaScript to install the necessary dependencies:

http://exercism.io/languages/javascript/installation

Running the test suite

The provided test suite uses Jasmine. You can install it by opening a terminal window and running the following command:

1
npm install -g jasmine

Run the test suite from the exercise directory with:

1
jasmine transpose.spec.js

In many test suites all but the first test have been marked "pending". Once you get a test passing, activate the next one by changing xit to it.

Source

Reddit r/dailyprogrammer challenge #270 [Easy]. https://www.reddit.com/r/dailyprogrammer/comments/4msu2x/challenge_270_easy_transpose_the_input_text

Submitting Incomplete Solutions

It's possible to submit an incomplete solution so you can see how others have completed the exercise.