Já implementei uma vez em Delphi um programinha pra fazer isso, infelizmente perdi 
o código fonte em uma das vezes em que deu problema no meu HD. De qualquer forma a 
dica que posso dar é explicar como fiz isso...
    o primeiro passo é ter sua estrutura com todas as Strings que serão necessárias 
pra formar o Extenso. Os números em extenso de 1-9, de 11-19, de 10-90, de 100-900(cem 
e cento) e outras que serão necessárias para fazer a ligação entre as palavras: " e ", 
" de ", " mil ", "milhão"
    Separe o numero a pôr por extenso em grupos de 3 dígitos. Exemplo: 123456,78. 
Separe-o em 123  456  78 e faça a alanise de cada grupo. Pegando "123" como ele tem 3 
digitos nesse caso, voce vai na sua estrutura com as Strings das centenas e pega o 
texto equivalente ao digito 1. Repete o mesmo para a casa das dezenas e depois das 
unidades. Depois disso voce terá que identificar qual String de ligação terá que usar 
entre essas Strings. Nesse caso " e ". Mas ainda tem o detalhe que ainda terá que 
decidir entre "cem" e "cento", e tambem o tratamento diferenciado para quando o valor 
for entre 11 e 19. Depois que tiver o extenso de 123 e 456 é só descobrir qual texto 
usar pra ligar os dois. Como estamos tratando da casa de milhares então adicionamos " 
mil " entre os dois extensos anteriores. Nesse ponto tem as dificuldade de as vezes 
ter que usar " e "(123010,00), ", "(123456) ou " de "(um milhao de reais) ou dois 
milhões. O melhor modo de definir que Strings voce usara para ligar essas palavras é 
escrevendo muitos numeros por extenso e vendo suas variações.
    Espero ter ajudado de alguma forma
===========================================
Francisco Deisimar Nobre Júnior
Analista de Sistemas - CIT - M. Dias Branco
===========================================

-----Mensagem original-----
De: Jose Carlos [mailto:[EMAIL PROTECTED]]
Enviada em: quinta-feira, 5 de setembro de 2002 11:13
Para: [EMAIL PROTECTED]
Assunto: Re: [java-list] Algoritimo Numero por Extenso


Eis uma pergunta complicada... É necessário conhecer mais de português q Java para 
isso...
 
ex:
10
Dez
 
11
onze
 
12
doze
 
Acredito que somente dentro de uma certa faixa isso possa funcionar:
 
Ex:
1000 a 1500
 
se o numero estiver entre 1000 e 1500 vc sabe q a primeira parte da string é "mil". 
de 100 a 900 vc teria valores definidos por extenso.
de 10 a 99 iden
de 0 a 9 também.
 
 
Muito complexo. Acho que não tem jeito para todos os números, precisaria talvez de uns 
recursos de IA para fazer isso ou vários Vector ou Hashtable.
 
Sugiro outra alternativa.
[]'s
Sparc

----- Original Message ----- 
From: rodrigo moura <mailto:[EMAIL PROTECTED]>  
To: [EMAIL PROTECTED] 
Sent: Tuesday, September 03, 2002 5:19 PM
Subject: [java-list] Algoritimo Numero por Extenso


Oi pessoal, 

       alguem tem algum algoritmo que leia um numero e escreva ele por extenso? 

eu sei que eu tenho que fazer um vetor com unidades, dezenas, centenas, milhares, 
etc... mas como eu vou criticar isso?

Obrigado, 

                  Rodrigo Norões        

                 

 

 

 



  _____  

 <http://br.geocities.yahoo.com/v/pb.html> Yahoo! PageBuilder - O super editor para 
criação de sites: é grátis, fácil e rápido.


------------------------------ LISTA SOUJAVA ----------------------------
http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
historico: http://www.mail-archive.com/java-list%40soujava.org.br
para sair da lista: envie email para [EMAIL PROTECTED]
-------------------------------------------------------------------------

Responder a