Sha256: b1a913e287c179e963afbc71898d3542c831329a7403404f97ad3ff13e9cd5e1
Contents?: true
Size: 1.7 KB
Versions: 87
Compression:
Stored size: 1.7 KB
Contents
# All Your Base Convert a number, represented as a sequence of digits in one base, to any other base. Implement general base conversion. Given a number in base **a**, represented as a sequence of digits, convert it to base **b**. ## Note - Try to implement the conversion yourself. Do not use something else to perform the conversion for you. ## About [Positional Notation](https://en.wikipedia.org/wiki/Positional_notation) In positional notation, a number in base **b** can be understood as a linear combination of powers of **b**. The number 42, *in base 10*, means: (4 * 10^1) + (2 * 10^0) The number 101010, *in base 2*, means: (1 * 2^5) + (0 * 2^4) + (1 * 2^3) + (0 * 2^2) + (1 * 2^1) + (0 * 2^0) The number 1120, *in base 3*, means: (1 * 3^3) + (1 * 3^2) + (2 * 3^1) + (0 * 3^0) I think you got the idea! *Yes. Those three numbers above are exactly the same. Congratulations!* ## Running tests Execute the tests with: ```bash $ elixir all_your_base_test.exs ``` ### Pending tests In the test suites, all but the first test have been skipped. Once you get a test passing, you can unskip the next one by commenting out the relevant `@tag :pending` with a `#` symbol. For example: ```elixir # @tag :pending test "shouting" do assert Bob.hey("WATCH OUT!") == "Whoa, chill out!" end ``` Or, you can enable all the tests by commenting out the `ExUnit.configure` line in the test suite. ```elixir # ExUnit.configure exclude: :pending, trace: true ``` For more detailed information about the Elixir track, please see the [help page](http://exercism.io/languages/elixir). ## Submitting Incomplete Solutions It's possible to submit an incomplete solution so you can see how others have completed the exercise.
Version data entries
87 entries across 87 versions & 1 rubygems