Mix.install([
{:youtube, github: "brooklinjazz/youtube"},
{:hidden_cell, github: "brooklinjazz/hidden_cell"},
{:tested_cell, github: "brooklinjazz/tested_cell"},
{:utils, path: "#{__DIR__}/../utils"}
])
Ensure you type the ea
keyboard shortcut to evaluate all Elixir cells before starting. Alternatively you can evaluate the Elixir cells as you read.
In the Elixir cell below, create a function naming_numbers
which accepts a
single digit integer and returns its string representation. So 1
would become "one"
.
flowchart
0 --> zero
1 --> one
2 --> two
3 --> three
4 --> four
5 --> five
6 --> six
7 --> seven
8 --> eight
9 --> nine
naming_numbers.(1)
"one"
Solution Example
naming_numbers = fn integer ->
case integer do
0 -> "zero"
1 -> "one"
2 -> "two"
3 -> "three"
4 -> "four"
5 -> "five"
6 -> "six"
7 -> "seven"
8 -> "eight"
9 -> "nine"
end
end
Enter your solution below.
In the Elixir cell below, create a function numbering_names
which accepts a
number's name and returns its string representation. So "one"
would become 1
.
In addition to accepting lowercase name, also accept uppercase names so "One"
would become 1
.
flowchart
zero --> 0
one --> 1
two --> 2
three --> 3
four --> 4
five --> 5
six --> 6
seven --> 7
eight --> 8
nine --> 9
flowchart
Zero --> 0
One --> 1
Two --> 2
Three --> 3
Four --> 4
Five --> 5
Six --> 6
Seven --> 7
Eight --> 8
Nine --> 9
Solution Example
We can brute force the solutione using case.
numbering_names = fn int_str ->
case int_str do
"zero" -> 0
"one" -> 1
"two" -> 2
"three" -> 3
"four" -> 4
"five" -> 5
"six" -> 6
"seven" -> 7
"eight" -> 8
"nine" -> 9
"Zero" -> 0
"One" -> 1
"Two" -> 2
"Three" -> 3
"Four" -> 4
"Five" -> 5
"Six" -> 6
"Seven" -> 7
"Eight" -> 8
"Nine" -> 9
end
end
Or use String.downcase/2 to make the solutione more concise.
This has the added benefit of handling mixed case such as "ZeRO"
.
numbering_names = fn int_str ->
case String.downcase(int_str) do
"zero" -> 0
"one" -> 1
"two" -> 2
"three" -> 3
"four" -> 4
"five" -> 5
"six" -> 6
"seven" -> 7
"eight" -> 8
"nine" -> 9
end
end
Run the following in your command line from the beta_curriculum folder to track and save your progress in a Git commit.
$ git add .
$ git commit -m "finish naming numbers exercise"
Previous | Next |
---|---|
Control Flow | Rock Paper Scissors |