Article View: es.comp.os.linux.programacion
Article #18323Re: Tipo de datos Currency
From: M. Reina
Date: Fri, 17 Sep 1999 00:00
Date: Fri, 17 Sep 1999 00:00
42 lines
2468 bytes
2468 bytes
Si utilizas un long que en muchas arquitecturas es de 64 bits o mejor un
gint64 definido con glib y consideras que los 13 bits de menos peso van
detr�s de la coma decimal obtienes un rango de:
-1.1260373625753602e15 a +1.1260373625753602e15 con una precision de
1.2208521548040532e-4, o sea casi 4 cifras decimales exactas (haciendo los
ajustes que quieras puedes obtener el rango/precisi�n que quieras). Al hacer
las cuentas hay que tener cuidado de ajustar la multiplicaci�n:
a*b --> (a*b)/0x1fff
Y para representarlo puedes convertirlo en flotante y representar el
flotante:
a --> (1.0*a)/0x1fff
Si utilizas c++ puedes sobrecargar el operador "*".
Un Saludo.
"Jose I. Ardanza" wrote:
> Javier Cantero escribi� en mensaje ...
> >In article <7rnh6b$jq423@eui1nw.euskaltel.es>, Jose I. Ardanza wrote:
> >>Como se puede utilizar el tipo de datos Currency de VB con el gcc. ???
> >
> > ��� ???
> >
> > Me suena muy raro esto que preguntas. �No ser� VC en vez de VB?
>
> No se si en VC tambien existe, pero en VB es:
>
> Tipo de datos Currency (entero con escala)
>
> Las variables de tipo Currency se almacenan como n�meros de 64 bits (8
> bytes)
> en formato entero, con un factor de escala de 10.000 para dar n�meros de
> coma fija
> con 15 d�gitos a la izquierda de la coma decimal y 4 a la derecha.
> Esta representaci�n proporciona un rango comprendido
> entre -922.337.203.685.477,5808 y 922.337.203.685.477,5807.
>
> Es �til para c�lculos monetarios y para aqu�llos de punto fijo para los
> cuales la precisi�n es especialmente importante.
>
> Saludos
Technical Details
Message-ID:
<37E1EB14.276A1A53@ceh.junta-andalucia.es>Path:
arc1-ca.pugleaf.net!unknown!not-for-mailReferences:
<7rnh6b$jq423@eui1nw.euskaltel.es> <slrn7tuosr.bu.javier@eb2dsn.ampr.org> <7rqt1g$qnj16@eui1nw.euskaltel.es>Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII X-Google-Thread: f86c8,bcf02ea406ca2e2d X-Google-Attributes: gidf86c8,public From: "M. Reina" <mreina@ceh.junta-andalucia.es> Subject: Re: Tipo de datos Currency Date: 1999/09/17 Message-ID: <37E1EB14.276A1A53@ceh.junta-andalucia.es> X-Deja-AN: 526223561 Distribution: es Content-Transfer-Encoding: 8bit References: <7rnh6b$jq423@eui1nw.euskaltel.es> <slrn7tuosr.bu.javier@eb2dsn.ampr.org> <7rqt1g$qnj16@eui1nw.euskaltel.es> X-Accept-Language: en Content-Type: text/plain; charset=iso-8859-1 X-Complaints-To: newsmanager@rediris.es X-Trace: batcher.rediris.es 937552509 17327 150.214.90.153 (17 Sep 1999 07:15:09 GMT) Organization: RedIRIS. Mime-Version: 1.0 NNTP-Posting-Date: 17 Sep 1999 07:15:09 GMT Newsgroups: es.comp.os.linux.programacion