nejmensi cislo na amd64
To |
Debian CZ/SK project discussion list <czdebian-l zavinac debian bod cz> |
From |
Michal Hajek <hajek1 zavinac karlov bod mff bod cuni bod cz> |
Date |
Wed, 26 Oct 2005 17:14:10 +0200 |
Mail-followup-to |
Debian CZ/SK project discussion list <czdebian-l zavinac debian bod cz> |
User-agent |
Mutt/1.5.9i |
Dobry den,
mam debian amd64, testing a rad bych zjistil, jake nejmensi cislo muzu
ulozit do pc :) Coz je standardni ulozka.
Napsal jsem si tenhle program v C:
#include <stdio.h>
int main()
{
long double eps;
printf("%d \n", sizeof(eps));
eps=0.01;
while (1+eps > 1)
{
eps=eps/2;
printf("\neps= %g",eps);
}
printf("\n Hotovo!\n");
}
Ovsem k memu prekvapeni vypise
16
a pak radu _stejnych radek_
eps= 6.95336e-310
a nakonec:
Hotovo!
Cemuz dobre nerozumim. Muzete mi prosim toto chovani objasnit?
Kompiloval jsem pomoci prikazu:
gcc -o eps nejmensi.c
Cili zadne specialni parametry.
Pro zajimavost, kdyz vymenim "long double" za "double" tak dostanu
sadu ruznych cisel podle predpokladu a vysledek ma hodnotu:
eps= 7.10543e-17
Predem diky za tipy :)
Zdravi Michal
Partial thread listing: