Você está na página 1de 1

mostrar :: Int -> String

--converter :: Int -> (Int,Int)


--converter1 :: Int ->(Int,Int)
muda :: Int ->(Int,Int,Int)
unidades = ["um","dois","tres","quatro","cinco","seis","sete","oito","nove"]
dez_pra_dezanove = ["dez","onze","doze","treze","catorze","quinze","dezaseis","d
ezasete","dezoito","dezanove"]
dezenas = ["vinte","trinta","quarenta","cinquenta","sessenta","setenta","oitenta
","noventa"]
centenas =["cem","duzentos","trezentos","quatrocentos","quinhentos","seiscentos"
,"setecentos","oitocentos","novecentos"]

--converter x =(x)
--converter1 x =((x`div`10),(x`mod`10))
muda x =((x`div`100),((x`mod`100)`div`10),(x`mod`10))
mostrar x |(muda x)==(0,0,x) = unidades!!(x-1)
|(muda x)==(0,1,0) = dez_pra_dezanove!!0
|(muda x)==(0,1,(x`mod`10)) = dez_pra_dezanove!!(x`mod`10)
|(muda x)==(0,(x`div`10),0) = dezenas!!((x`div`10)-2)
|(muda x)==(0,(x`div`10),(x`mod`10)) = dezenas!!((x`div`10)-2)++ " e
"++ unidades!!((x`mod`10)-1)
|(muda x)==((x`div`100),0,0)= centenas!!((x`div`100)-1)
|(muda x)==((x`div`100),1,0)= centenas!!((x`div`100)-1) ++ " e "++ de
z_pra_dezanove!!(((x`mod`100)`div`10)-1)
|(muda x)==((x`div`100),((x`mod`100)`div`10),0) = centenas!!((x`div`
100)-1) ++ " e "++dezenas!!(((x`mod`100)`div`10)-2)
|(muda x)==((x`div`100),1,(x`mod`10)) = centenas!!((x`div`100)-1) ++
" e "++ dez_pra_dezanove!!(x`mod`10)
|(muda x)==((x`div`100),((x`mod`100)`div`10),(x`mod`10)) =centenas!!
((x`div`100)-1) ++ " e "++ dezenas!!(((x`mod`100)`div`10)-2)++ " e "++unidades!!
((x`mod`10)-1)

Você também pode gostar