Q&A

  • 1원차이가 납니다!!!!!!!
var

lww_temp:real;

lww_temp2:real;

begin



lww_temp:=wNumEdit1.Value*wNumEdit2.Value;

showmessage(floattostr(lww_temp));

lww_temp2:=int(lww_temp);

showmessage(floattostr(lww_temp2));





end;



위와같이 코딩이 되어있는데

lww_temp의 값과 lww_temp2의 값이 1원차이가 납니다

왜그런지 알려주세요??????????

그런데 항상 이런것이아니고 되는경우도 있고 그렀습니다.

참고고 저는 realgrid의 wNumEdit를 사용합니다.

wNumEdit1.Value=112500,wNumEdit2.Value=1108.11을 넣어보시고 확인해보시기 바랍니다





2  COMMENTS
  • Profile
    코스모 2000.08.28 19:18
    권오정 wrote:

    > var

    > lww_temp:real;

    > lww_temp2:real;

    > begin

    >

    > lww_temp:=wNumEdit1.Value*wNumEdit2.Value;

    > showmessage(floattostr(lww_temp));

    > lww_temp2:=int(lww_temp);

    > showmessage(floattostr(lww_temp2));

    >

    >

    > end;

    >

    > 위와같이 코딩이 되어있는데



    > lww_temp의 값과 lww_temp2의 값이 1원차이가 납니다

    > 왜그런지 알려주세요??????????

    > 그런데 항상 이런것이아니고 되는경우도 있고 그렀습니다.

    > 참고고 저는 realgrid의 wNumEdit를 사용합니다.

    > wNumEdit1.Value=112500,wNumEdit2.Value=1108.11을 넣어보시고 확인해보시기 바랍니다

    >

    >



    당근 나죠

    왜냐구여 ?



    lww_temp2:=int(lww_temp); <=== 얘는 정수형으로 변환 되네염.

    실수형을 정수형으로 변할려면 절삭 또는 반올림을 정의 해 주셔야 할것 같네염

    지금 현재는 .5이상은 1루되구

    .4이하는 0으로 되는 것 같네염



    맞져 ?



  • Profile
    권오정 2000.08.28 19:25
    코스모 wrote:

    > 권오정 wrote:

    > > var

    > > lww_temp:real;

    > > lww_temp2:real;

    > > begin

    > >

    > > lww_temp:=wNumEdit1.Value*wNumEdit2.Value;

    > > showmessage(floattostr(lww_temp));

    > > lww_temp2:=int(lww_temp);

    > > showmessage(floattostr(lww_temp2));

    > >

    > >

    > > end;

    > >

    > > 위와같이 코딩이 되어있는데

    >

    > > lww_temp의 값과 lww_temp2의 값이 1원차이가 납니다

    > > 왜그런지 알려주세요??????????

    > > 그런데 항상 이런것이아니고 되는경우도 있고 그렀습니다.

    > > 참고고 저는 realgrid의 wNumEdit를 사용합니다.

    > > wNumEdit1.Value=112500,wNumEdit2.Value=1108.11을 넣어보시고 확인해보시기 바랍니다

    > >

    > >

    >

    > 당근 나죠

    > 왜냐구여 ?

    >

    > lww_temp2:=int(lww_temp); <=== 얘는 정수형으로 변환 되네염.

    > 실수형을 정수형으로 변할려면 절삭 또는 반올림을 정의 해 주셔야 할것 같네염

    > 지금 현재는 .5이상은 1루되구

    > .4이하는 0으로 되는 것 같네염

    >

    > 맞져 ?

    >





    물론 저도 처음엔 그런줄생각했었는데...

    위에서 제가 예문을 드린것처럼

    wNumEdit1.Value=112500,wNumEdit2.Value=1108.11을 넣어보시고 확인해보시면

    lww_temp의 값이 소숫점이 없이 124662375 가 나옵니다

    그런데 lww_temp2의 값은 124,662,374가 나옵니다.

    이것은 어떻게 해석해야 할지??????