Skip to content

Instantly share code, notes, and snippets.

@CharlesOkwuagwu
Last active December 5, 2015 17:59
Show Gist options
  • Save CharlesOkwuagwu/15fc888d94f3f7c80970 to your computer and use it in GitHub Desktop.
Save CharlesOkwuagwu/15fc888d94f3f7c80970 to your computer and use it in GitHub Desktop.
Converts any positive integer to words (up to 10^1004 -1 :))
defmodule ToWords do
@moduledoc """
Converts any positive integer to words (up to 10^1004 -1 :))
"""
#http://www.olsenhome.com/bignumbers/
@illion ~w[
m
b
tr
quadr
quint
sext
sept
oct
non
dec
undec
duodec
tredec
quattuordec
quindec
sedec
septendec
octodec
novendec
vigint
unvigint
duovigint
tresvigint
quattuorvigint
quinvigint
sesvigint
septemvigint
octovigint
novemvigint
trigint
untrigint
duotrigint
trestrigint
quattuortrigint
quintrigint
sestrigint
septentrigint
octotrigint
noventrigint
quadragint
unquadragint
duoquadragint
tresquadragint
quattuorquadragint
quindragint
sesquadragint
septenquadragint
octoquadragint
novenquadragint
quinquagint
unquinquagint
duoquinquagint
tresquinquagint
quattuorquinquagint
quinquinquagint
sesquinquagint
septenquinquagint
octoquinquagint
novenquinquagint
sexagint
unsexagint
duosexagint
tresexagint
quattuorsexagint
quinsexagint
sesexagint
septensexagint
octosexagint
novensexagint
septuagint
unseptuagint
duoseptuagint
treseptuagint
quattuorseptuagint
quinseptuagint
seseptuagint
septenseptuagint
octoseptuagint
novenseptuagint
octogint
unoctogint
duooctogint
tresoctogint
quattuoroctogint
quinoctogint
sexoctogint
septemoctogint
octooctogint
novemoctogint
nonagint
unnonagint
duononagint
trenonagint
quattuornonagint
quinnonagint
senonagint
septenonagint
octononagint
novenonagint
cent
uncent
duocent
trescent
quattuorcent
quincent
sexcent
septencent
octocent
novencent
decicent
undecicent
duodecicent
tredecicent
quattuordecicent
quindecicent
sedecicent
septendecicent
octodecicent
novendecicent
viginticent
unviginticent
duoviginticent
tresviginticent
quattuorviginticent
quinviginticent
sesviginticent
septemviginticent
octoviginticent
novemviginticent
trigintacent
untrigintacent
duotrigintacent
trestrigintacent
quattuortrigintacent
quintrigintacent
sestrigintacent
septentrigintacent
octotrigintacent
noventrigintacent
quadragintacent
unquadragintacent
duoquadragintacent
tresquadragintacent
quattuorquadragintacent
quinquadragintacent
sesquadragintacent
septenquadragintacent
octoquadragintacent
novenquadragintacent
quinquagintacent
unquinquagintacent
duoquinquagintacent
tresquinquagintacent
quattuorquinquagintacent
quinquinquagintacent
sesquinquagintacent
septenquinquagintacent
octoquinquagintacent
novenquinquagintacent
sexagintacent
unsexagintacent
duosexagintacent
tresexagintacent
quattuorsexagintacent
quinsexagintacent
sesexagintacent
septensexagintacent
octosexagintacent
novensexagintacent
septuagintacent
unseptuagintacent
duoseptuagintacent
treseptuagintacent
quattuorseptuagintacent
quinseptuagintacent
seseptuagintacent
septenseptuagintacent
octoseptuagintacent
novenseptuagintacent
octogintacent
unoctogintacent
duooctogintacent
tresoctogintacent
quattuoroctogintacent
quinoctogintacent
sexoctogintacent
septemoctogintacent
octooctogintacent
novemoctogintacent
nonagintacent
unnonagintacent
duononagintacent
trenonagintacent
quattuornonagintacent
quinnonagintacent
senonagintacent
septenonagintacent
octononagintacent
novenonagintacent
ducent
unducent
duoducent
treducent
quattuorducent
quinducent
seducent
septenducent
octoducent
novenducent
deciducent
undeciducent
duodeciducent
tredeciducent
quattuordeciducent
quindeciducent
sedeciducent
septendeciducent
octodeciducent
novendeciducent
vigintiducent
unvigintiducent
duovigintiducent
tresvigintiducent
quattuorvigintiducent
quinvigintiducent
sesvigintiducent
septemvigintiducent
octovigintiducent
novemvigintiducent
trigintaducent
untrigintaducent
duotrigintaducent
trestrigintaducent
quattuortrigintaducent
quintrigintaducent
sestrigintaducent
septentrigintaducent
octotrigintaducent
noventrigintaducent
quadragintaducent
unquadragintaducent
duoquadragintaducent
tresquadragintaducent
quattuorquadragintaducent
quinquadragintaducent
sesquadragintaducent
septenquadragintaducent
octoquadragintaducent
novenquadragintaducent
quinquagintaducent
unquinquagintaducent
duoquinquagintaducent
tresquinquagintaducent
quattuorquinquagintaducent
quinquinquagintaducent
sesquinquagintaducent
septenquinquagintaducent
octoquinquagintaducent
novenquinquagintaducent
sexagintaducent
unsexagintaducent
duosexagintaducent
tresexagintaducent
quattuorsexagintaducent
quinsexagintaducent
sesexagintaducent
septensexagintaducent
octosexagintaducent
novensexagintaducent
septuagintaducent
unseptuagintaducent
duoseptuagintaducent
treseptuagintaducent
quattuorseptuagintaducent
quinseptuagintaducent
seseptuagintaducent
septenseptuagintaducent
octoseptuagintaducent
novenseptuagintaducent
octogintaducent
unoctogintaducent
duooctogintaducent
tresoctogintaducent
quattuoroctogintaducent
quinoctogintaducent
sexoctogintaducent
septemoctogintaducent
octooctogintaducent
novemoctogintaducent
nonagintaducent
unnonagintaducent
duononagintaducent
trenonagintaducent
quattuornonagintaducent
quinnonagintaducent
senonagintaducent
septenonagintaducent
octononagintaducent
novenonagintaducent
trecent
untrecent
duotrecent
trestrecent
quattuortrecent
quintrecent
sestrecent
septentrecent
octotrecent
noventrecent
decitrecent
undecitrecent
duodecitrecent
tredecitrecent
quattuordecitrecent
quindecitrecent
sedecitrecent
septendecitrecent
octodecitrecent
novendecitrecent
vigintitrecent
unvigintitrecent
duovigintitrecent
tresvigintitrecent
quattuorvigintitrecent
quinvigintitrecent
sesvigintitrecent
septemvigintitrecent
octovigintitrecent
novemvigintitrecent
trigintatrecent
untrigintatrecent
duotrigintatrecent
trestrigintatrecent
quattuortrigintatrecent
quintrigintatrecent
sestrigintatrecent
septentrigintatrecent
octotrigintatrecent
noventrigintatrecent
quadragintatrecent
unquadragintatrecent
duoquadragintatrecent
tresquadragintatrecent
quattuorquadragintatrecent
quinquadragintatrecent
sesquadragintatrecent
septenquadragintatrecent
octoquadragintatrecent
novenquadragintatrecent
quinquagintatrecent
unquinquagintatrecent
duoquinquagintatrecent
tresquinquagintatrecent
quattuorquinquagintatrecent
quinquinquagintatrecent
sesquinquagintatrecent
septenquinquagintatrecent
octoquinquagintatrecent
novenquinquagintatrecent
sexagintatrecent
unsexagintatrecent
duosexagintatrecent
tresexagintatrecent
quattuorsexagintatrecent
quinsexagintatrecent
sesexagintatrecent
septensexagintatrecent
octosexagintatrecent
novensexagintatrecent
septuagintatrecent
unseptuagintatrecent
duoseptuagintatrecent
treseptuagintatrecent
quattuorseptuagintatrecent
quinseptuagintatrecent
seseptuagintatrecent
septenseptuagintatrecent
octoseptuagintatrecent
novenseptuagintatrecent
octogintatrecent
unoctogintatrecent
duooctogintatrecent
tresoctogintatrecent
quattuoroctogintatrecent
quinoctogintatrecent
sexoctogintatrecent
septemoctogintatrecent
octooctogintatrecent
novemoctogintatrecent
nonagintatrecent
unnonagintatrecent
duononagintatrecent
trenonagintatrecent
quattuornonagintatrecent
quinnonagintatrecent
senonagintatrecent
septenonagintatrecent
octononagintatrecent
novenonagintatrecent
quadringent
unquadringent
duoquadringent
tresquadringent
quattuorquadringent
quinquadringent
sesquadringent
septenquadringent
octoquadringent
novenquadringent
deciquadringent
undeciquadringent
duodeciquadringent
tredeciquadringent
quattuordeciquadringent
quindeciquadringent
sedeciquadringent
septendeciquadringent
octodeciquadringent
novendeciquadringent
vigintiquadringent
unvigintiquadringent
duovigintiquadringent
tresvigintiquadringent
quattuorvigintiquadringent
quinvigintiquadringent
sesvigintiquadringent
septemvigintiquadringent
octovigintiquadringent
novemvigintiquadringent
trigintaquadringent
untrigintaquadringent
duotrigintaquadringent
trestrigintaquadringent
quattuortrigintaquadringent
quintrigintaquadringent
sestrigintaquadringent
septentrigintaquadringent
octotrigintaquadringent
noventrigintaquadringent
quadragintaquadringent
unquadragintaquadringent
duoquadragintaquadringent
tresquadragintaquadringent
quattuorquadragintaquadringent
quinquadragintaquadringent
sesquadragintaquadringent
septenquadragintaquadringent
octoquadragintaquadringent
novenquadragintaquadringent
quinquagintaquadringent
unquinquagintaquadringent
duoquinquagintaquadringent
tresquinquagintaquadringent
quattuorquinquagintaquadringent
quinquinquagintaquadringent
sesquinquagintaquadringent
septenquinquagintaquadringent
octoquinquagintaquadringent
novenquinquagintaquadringent
sexagintaquadringent
unsexagintaquadringent
duosexagintaquadringent
tresexagintaquadringent
quattuorsexagintaquadringent
quinsexagintaquadringent
sesexagintaquadringent
septensexagintaquadringent
octosexagintaquadringent
novensexagintaquadringent
septuagintaquadringent
unseptuagintaquadringent
duoseptuagintaquadringent
treseptuagintaquadringent
quattuorseptuagintaquadringent
quinseptuagintaquadringent
seseptuagintaquadringent
septenseptuagintaquadringent
octoseptuagintaquadringent
novenseptuagintaquadringent
octogintaquadringent
unoctogintaquadringent
duooctogintaquadringent
tresoctogintaquadringent
quattuoroctogintaquadringent
quinoctogintaquadringent
sexoctogintaquadringent
septemoctogintaquadringent
octooctogintaquadringent
novemoctogintaquadringent
nonagintaquadringent
unnonagintaquadringent
duononagintaquadringent
trenonagintaquadringent
quattuornonagintaquadringent
quinnonagintaquadringent
senonagintaquadringent
septenonagintaquadringent
octononagintaquadringent
novenonagintaquadringent
quingent
unquingent
duoquingent
tresquingent
quattuorquingent
quinquingent
sesquingent
septenquingent
octoquingent
novenquingent
deciquingent
undeciquingent
duodeciquingent
tredeciquingent
quattuordeciquingent
quindeciquingent
sedeciquingent
septendeciquingent
octodeciquingent
novendeciquingent
vigintiquingent
unvigintiquingent
duovigintiquingent
tresvigintiquingent
quattuorvigintiquingent
quinvigintiquingent
sesvigintiquingent
septemvigintiquingent
octovigintiquingent
novemvigintiquingent
trigintaquingent
untrigintaquingent
duotrigintaquingent
trestrigintaquingent
quattuortrigintaquingent
quintrigintaquingent
sestrigintaquingent
septentrigintaquingent
octotrigintaquingent
noventrigintaquingent
quadragintaquingent
unquadragintaquingent
duoquadragintaquingent
tresquadragintaquingent
quattuorquadragintaquingent
quinquadragintaquingent
sesquadragintaquingent
septenquadragintaquingent
octoquadragintaquingent
novenquadragintaquingent
quinquagintaquingent
unquinquagintaquingent
duoquinquagintaquingent
tresquinquagintaquingent
quattuorquinquagintaquingent
quinquinquagintaquingent
sesquinquagintaquingent
septenquinquagintaquingent
octoquinquagintaquingent
novenquinquagintaquingent
sexagintaquingent
unsexagintaquingent
duosexagintaquingent
tresexagintaquingent
quattuorsexagintaquingent
quinsexagintaquingent
sesexagintaquingent
septensexagintaquingent
octosexagintaquingent
novensexagintaquingent
septuagintaquingent
unseptuagintaquingent
duoseptuagintaquingent
treseptuagintaquingent
quattuorseptuagintaquingent
quinseptuagintaquingent
seseptuagintaquingent
septenseptuagintaquingent
octoseptuagintaquingent
novenseptuagintaquingent
octogintaquingent
unoctogintaquingent
duooctogintaquingent
tresoctogintaquingent
quattuoroctogintaquingent
quinoctogintaquingent
sexoctogintaquingent
septemoctogintaquingent
octooctogintaquingent
novemoctogintaquingent
nonagintaquingent
unnonagintaquingent
duononagintaquingent
trenonagintaquingent
quattuornonagintaquingent
quinnonagintaquingent
senonagintaquingent
septenonagintaquingent
octononagintaquingent
novenonagintaquingent
sescent
unsescent
duosescent
tresescent
quattuorsescent
quinsescent
sesescent
septensescent
octosescent
novensescent
decisescent
undecisescent
duodecisescent
tredecisescent
quattuordecisescent
quindecisescent
sedecisescent
septendecisescent
octodecisescent
novendecisescent
vigintisescent
unvigintisescent
duovigintisescent
tresvigintisescent
quattuorvigintisescent
quinvigintisescent
sesvigintisescent
septemvigintisescent
octovigintisescent
novemvigintisescent
trigintasescent
untrigintasescent
duotrigintasescent
trestrigintasescent
quattuortrigintasescent
quintrigintasescent
sestrigintasescent
septentrigintasescent
octotrigintasescent
noventrigintasescent
quadragintasescent
unquadragintasescent
duoquadragintasescent
tresquadragintasescent
quattuorquadragintasescent
quinquadragintasescent
sesquadragintasescent
septenquadragintasescent
octoquadragintasescent
novenquadragintasescent
quinquagintasescent
unquinquagintasescent
duoquinquagintasescent
tresquinquagintasescent
quattuorquinquagintasescent
quinquinquagintasescent
sesquinquagintasescent
septenquinquagintasescent
octoquinquagintasescent
novenquinquagintasescent
sexagintasescent
unsexagintasescent
duosexagintasescent
tresexagintasescent
quattuorsexagintasescent
quinsexagintasescent
sesexagintasescent
septensexagintasescent
octosexagintasescent
novensexagintasescent
septuagintasescent
unseptuagintasescent
duoseptuagintasescent
treseptuagintasescent
quattuorseptuagintasescent
quinseptuagintasescent
seseptuagintasescent
septenseptuagintasescent
octoseptuagintasescent
novenseptuagintasescent
octogintasescent
unoctogintasescent
duooctogintasescent
tresoctogintasescent
quattuoroctogintasescent
quinoctogintasescent
sexoctogintasescent
septemoctogintasescent
octooctogintasescent
novemoctogintasescent
nonagintasescent
unnonagintasescent
duononagintasescent
trenonagintasescent
quattuornonagintasescent
quinnonagintasescent
senonagintasescent
septenonagintasescent
octononagintasescent
novenonagintasescent
septingent
unseptingent
duoseptingent
treseptingent
quattuorseptingent
quinseptingent
seseptingent
septenseptingent
octoseptingent
novenseptingent
deciseptingent
undeciseptingent
duodeciseptingent
tredeciseptingent
quattuordeciseptingent
quindeciseptingent
sedeciseptingent
septendeciseptingent
octodeciseptingent
novendeciseptingent
vigintiseptingent
unvigintiseptingent
duovigintiseptingent
tresvigintiseptingent
quattuorvigintiseptingent
quinvigintiseptingent
sesvigintiseptingent
septemvigintiseptingent
octovigintiseptingent
novemvigintiseptingent
trigintaseptingent
untrigintaseptingent
duotrigintaseptingent
trestrigintaseptingent
quattuortrigintaseptingent
quintrigintaseptingent
sestrigintaseptingent
septentrigintaseptingent
octotrigintaseptingent
noventrigintaseptingent
quadragintaseptingent
unquadragintaseptingent
duoquadragintaseptingent
tresquadragintaseptingent
quattuorquadragintaseptingent
quinquadragintaseptingent
sesquadragintaseptingent
septenquadragintaseptingent
octoquadragintaseptingent
novenquadragintaseptingent
quinquagintaseptingent
unquinquagintaseptingent
duoquinquagintaseptingent
tresquinquagintaseptingent
quattuorquinquagintaseptingent
quinquinquagintaseptingent
sesquinquagintaseptingent
septenquinquagintaseptingent
octoquinquagintaseptingent
novenquinquagintaseptingent
sexagintaseptingent
unsexagintaseptingent
duosexagintaseptingent
tresexagintaseptingent
quattuorsexagintaseptingent
quinsexagintaseptingent
sesexagintaseptingent
septensexagintaseptingent
octosexagintaseptingent
novensexagintaseptingent
septuagintaseptingent
unseptuagintaseptingent
duoseptuagintaseptingent
treseptuagintaseptingent
quattuorseptuagintaseptingent
quinseptuagintaseptingent
seseptuagintaseptingent
septenseptuagintaseptingent
octoseptuagintaseptingent
novenseptuagintaseptingent
octogintaseptingent
unoctogintaseptingent
duooctogintaseptingent
tresoctogintaseptingent
quattuoroctogintaseptingent
quinoctogintaseptingent
sexoctogintaseptingent
septemoctogintaseptingent
octooctogintaseptingent
novemoctogintaseptingent
nonagintaseptingent
unnonagintaseptingent
duononagintaseptingent
trenonagintaseptingent
quattuornonagintaseptingent
quinnonagintaseptingent
senonagintaseptingent
septenonagintaseptingent
octononagintaseptingent
novenonagintaseptingent
octingent
unoctingent
duooctingent
tresoctingent
quattuoroctingent
quinoctingent
sexoctingent
septemoctingent
octooctingent
novemoctingent
decioctingent
undecioctingent
duodecioctingent
tredecioctingent
quattuordecioctingent
quindecioctingent
sedecioctingent
septendecioctingent
octodecioctingent
novendecioctingent
vigintioctingent
unvigintioctingent
duovigintioctingent
tresvigintioctingent
quattuorvigintioctingent
quinvigintioctingent
sesvigintioctingent
septemvigintioctingent
octovigintioctingent
novemvigintioctingent
trigintaoctingent
untrigintaoctingent
duotrigintaoctingent
trestrigintaoctingent
quattuortrigintaoctingent
quintrigintaoctingent
sestrigintaoctingent
septentrigintaoctingent
octotrigintaoctingent
noventrigintaoctingent
quadragintaoctingent
unquadragintaoctingent
duoquadragintaoctingent
tresquadragintaoctingent
quattuorquadragintaoctingent
quinquadragintaoctingent
sesquadragintaoctingent
septenquadragintaoctingent
octoquadragintaoctingent
novenquadragintaoctingent
quinquagintaoctingent
unquinquagintaoctingent
duoquinquagintaoctingent
tresquinquagintaoctingent
quattuorquinquagintaoctingent
quinquinquagintaoctingent
sesquinquagintaoctingent
septenquinquagintaoctingent
octoquinquagintaoctingent
novenquinquagintaoctingent
sexagintaoctingent
unsexagintaoctingent
duosexagintaoctingent
tresexagintaoctingent
quattuorsexagintaoctingent
quinsexagintaoctingent
sesexagintaoctingent
septensexagintaoctingent
octosexagintaoctingent
novensexagintaoctingent
septuagintaoctingent
unseptuagintaoctingent
duoseptuagintaoctingent
treseptuagintaoctingent
quattuorseptuagintaoctingent
quinseptuagintaoctingent
seseptuagintaoctingent
septenseptuagintaoctingent
octoseptuagintaoctingent
novenseptuagintaoctingent
octogintaoctingent
unoctogintaoctingent
duooctogintaoctingent
tresoctogintaoctingent
quattuoroctogintaoctingent
quinoctogintaoctingent
sexoctogintaoctingent
septemoctogintaoctingent
octooctogintaoctingent
novemoctogintaoctingent
nonagintaoctingent
unnonagintaoctingent
duononagintaoctingent
trenonagintaoctingent
quattuornonagintaoctingent
quinnonagintaoctingent
senonagintaoctingent
septenonagintaoctingent
octononagintaoctingent
novenonagintaoctingent
nongent
unnongent
duonongent
trenongent
quattuornongent
quinnongent
senongent
septenongent
octonongent
novenongent
decinongent
undecinongent
duodecinongent
tredecinongent
quattuordecinongent
quindecinongent
sedecinongent
septendecinongent
octodecinongent
novendecinongent
vigintinongent
unvigintinongent
duovigintinongent
tresvigintinongent
quattuorvigintinongent
quinvigintinongent
sesvigintinongent
septemvigintinongent
octovigintinongent
novemvigintinongent
trigintanongent
untrigintanongent
duotrigintanongent
trestrigintanongent
quattuortrigintanongent
quintrigintanongent
sestrigintanongent
septentrigintanongent
octotrigintanongent
noventrigintanongent
quadragintanongent
unquadragintanongent
duoquadragintanongent
tresquadragintanongent
quattuorquadragintanongent
quinquadragintanongent
sesquadragintanongent
septenquadragintanongent
octoquadragintanongent
novenquadragintanongent
quinquagintanongent
unquinquagintanongent
duoquinquagintanongent
tresquinquagintanongent
quattuorquinquagintanongent
quinquinquagintanongent
sesquinquagintanongent
septenquinquagintanongent
octoquinquagintanongent
novenquinquagintanongent
sexagintanongent
unsexagintanongent
duosexagintanongent
tresexagintanongent
quattuorsexagintanongent
quinsexagintanongent
sesexagintanongent
septensexagintanongent
octosexagintanongent
novensexagintanongent
septuagintanongent
unseptuagintanongent
duoseptuagintanongent
treseptuagintanongent
quattuorseptuagintanongent
quinseptuagintanongent
seseptuagintanongent
septenseptuagintanongent
octoseptuagintanongent
novenseptuagintanongent
octogintanongent
unoctogintanongent
duooctogintanongent
tresoctogintanongent
quattuoroctogintanongent
quinoctogintanongent
sexoctogintanongent
septemoctogintanongent
octooctogintanongent
novemoctogintanongent
nonagintanongent
unnonagintanongent
duononagintanongent
trenonagintanongent
quattuornonagintanongent
quinnonagintanongent
senonagintanongent
septenonagintanongent
octononagintanongent
novenonagintanongent
millin
millim
millib
millitr
]
|> Enum.with_index
|> Enum.map(fn({a,b})->{b+2,a} end)
|> Enum.into %{}
@limit map_size(@illion)
@units ~w[zero one two three four five six seven eight nine ten eleven twelve thirteen fourteen fifteen sixteen seventeen eighteen nineteen]
|> Enum.with_index
|> Enum.map(fn({a,b})->{b,a} end)
|> Enum.into %{}
@tens ~w[twenty thirty forty fifty sixty seventy eighty ninety]
|> Enum.with_index
|> Enum.map(fn({a,b})->{b+2,a} end)
|> Enum.into %{}
def read(n) when n<1000, do: _00(n)
def read(n) do
case split(n,0,[]) do
[]-> "To big to read!"
parts ->
#IO.puts "#{inspect parts}"
parts
|>Enum.map_join(" ",&_000(&1))
end
end
defp split(_,k,_) when k>@limit, do: []
defp split(n,k,parts) when n<1000, do: [{k,n}|parts]
defp split(n,k,parts) when rem(n,1000) === 0, do: split(div(n,1000),k+1, parts)
defp split(n,k,parts), do: split(div(n,1000),k+1,[{k,rem(n,1000)}|parts])
defp _000({0,n}) when n<100, do: "and " <> _00(n)
defp _000({0,n}), do: _00(n)
defp _000({1,n}), do: _00(n) <> " thousand"
defp _000({k,n}), do: _00(n) <> " " <> @illion[k] <> "illion"
defp _00(n) when n>=100 and rem(n,100) === 0, do: @units[div(n,100)] <> " hundred"
defp _00(n) when n>=100, do: @units[div(n,100)] <> " hundred and " <> _00(rem(n,100))
defp _00(n) when n>=20 and rem(n,10) === 0, do: @tens[div(n,10)]
defp _00(n) when n>=20, do: @tens[div(n,10)] <> " " <> @units[rem(n,10)]
defp _00(n), do: @units[n]
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment