Article View: es.comp.os.linux.programacion
Article #12946Re: no resta bien en c
From: Santiago Romero
Date: Wed, 02 May 2001 13:04
Date: Wed, 02 May 2001 13:04
33 lines
1925 bytes
1925 bytes
El Wed, 02 May 2001 11:40:08 +0200, Santiago Campos Barrera escribi�:
> /* Esa resta da cero. Se empe�a en decir que no */
> if (1254.91-173.09-1081.82==0.0) printf(" La resta1 da cero\n");
Desde toda la vida los numeros flotantes tienen una determinada
precisi�n. Si los n�meros que utilizas est�n representados de
una determinada forma no podr�s lograr la precisi�n necesaria
para uqe el resultado sea un cero absoluto.
Deber�as hacer una de estas cosas:
1.- Utilizar enteros para representar las cosas que no requieran
flotantes.
2.- Utilizar librerias de precisi�n como la GMP y otras.
3.- Para ver si un resultado es cero, y si te empe�as en usar
floats, consideralo cero cuando sea menor de un cierto
epsilon:
total = turesta_guay;
epsilon = 0.0000000000001; :)
if( abs(total) < EPSILON ) printf("es cero");
salu2!
--
Santiago Romero
Departamento de Sistemas
sromero@servicom2000.com
C/ Primado Reig, 189 entlo
46020 Valencia - Spain
Tel. (+34) 96 332 12 00
Fax. (+34) 96 332 12 01
http://www.servicom2000.com
Technical Details
Message-ID:
<rl0pc9.7a1.ln@127.0.0.1>Path:
arc1-ca.pugleaf.net!newsfeed.google.com!newsfeed.stanford.edu!news.tele.dk!130.133.1.3!fu-berlin.de!newsfeed.bcn.ttd.net!news.mad.ttd.net!sromeroReferences:
<3AEFD5F8.43EF488E@essa.net>Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII X-Google-Thread: f86c8,3a88a3fa7399e58 X-Google-Attributes: gidf86c8,public X-Google-ArrivalTime: 2001-05-02 06:13:59 PST Path: arc1-ca.pugleaf.net!newsfeed.google.com!newsfeed.stanford.edu!news.tele.dk!130.133.1.3!fu-berlin.de!newsfeed.bcn.ttd.net!news.mad.ttd.net!sromero From: sromero@servicom2000.com (Santiago Romero) Newsgroups: es.comp.os.linux.programacion Subject: Re: no resta bien en c Date: Wed, 2 May 2001 15:04:59 +0200 Organization: Telefonica Transmision de Datos Lines: 34 Message-ID: <rl0pc9.7a1.ln@127.0.0.1> References: <3AEFD5F8.43EF488E@essa.net> Reply-To: sromero@servicom2000.com NNTP-Posting-Host: top.servicom2000.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit User-Agent: slrn/0.9.6.2 (Linux)