GNU C Compiler 2.7.2.3 de yazdigim programcigi derleyip
calistirdigimda
ekrana ilginc sonuclar cikiyor. Yapilan islem bir basit bolme islemi.
237.0 / 5.0
bolundugunde 47.4 cikmasi gerekirken 47.400002 cikiyor. 237.0/5.0 sonucu
degiskene atanip 5.0 ile carpildiginda 237.0000000 sonucunu alabiliyorum
ama 4.0 ile carptigimda 187.600006 oluyor. Aradigim kadariyla gcc nin
yeni versiyonunuda gormedim. Sanirim printf de bir sorun var. Nedir bu
isin sirri?
#gcc ornek.c -o ornek
#./ornek
Toplam =237.000000
Ortalama = 47.400002
4 ile carpimi =189.600006
5 ile carpimi =237.000000
5 * ortl =237.000008
iyi calismalar...
Erol Ozcan
infoTRON A.S.
Sys Admin
email: eozcan@superonline.com
web: www.infotron-tr.com
-------ornek.c------------
float data[5];
float toplam,ortl,carp,carp2;
int main()
{
data[0]=43.0; data[1]=11.2;
data[2]=65.7; data[3]=23.1;
data[4]=94.0;
toplam=data[0]+data[1]+data[2]+data[3]+data[4];
ortl=toplam / 5.0;
carp= ortl*4.0;
carp2= ortl*5.0;
printf("Toplam\t\t=%f\nOrtalama\t= %f \n",toplam,ortl);
printf("4 ile carpimi\t=%f\n",carp);
printf("5 ile carpimi\t=%f\n",carp2);
printf("5 * ortl\t=%f\n",ortl*5.0);
return(0);
}
--------son--------------