Q&A

  • 이것 좀 꼭 풀어주세여
C로 된 프로그램인데요 이걸 델파이로 바꿔야 되거든요.

두개의 에디트박스에서 입력받아서 버튼을 누르면 값이 나와야 되는데여 모르겠어요..

온도랑 습도를 입력받아서 이슬점 온도를 구하는 공식인데요 이것 좀 꼭 델파이로 풀어주세여.. 꼭



float DewPointCal(float Temperature,float Humidity)

{

if(temperature<=-9999.9f||Humidity<=-9999.9f) return -9999.9f;

if( Humidity == 0.0f) return -9999.9f;

double E = Humidity*0.0611*pow(10,(7.5*Temperature)/(237.3+Temperature)));

double DP = (237.3*log10(E)-186.527)/(8.286-log10(E));

return (float)DP;

}



2  COMMENTS
  • Profile
    돌머리 2000.09.22 11:25
    안녕하세요 김동원입니다.



    문법만 델파이 형대로 바꾸면 되겠네요...



    function DewPointCal(Temperature : real; Humidity :real) : real;

    var

    E, DP : float;

    begin

    if(Temperature<=-9999.9)or(Humidity<=-9999.9)then return -9999.9;

    else if( Humidity = 0.0f )then result := -9999.9

    else begin

    E := Humidity*0.0611*pow(10,(7.5*Temperature)/(237.3+Temperature)));

    DP := (237.3*log10(E)-186.527)/(8.286-log10(E));

    result := DP;

    end;

    end;



    Delphi 를 써본지가 하도 오래 되나서 ....

    float 로 쓰는지 real로 쓰는지 헷갈리네요...

    위의 내용을 참조하시면 제가 틀리게 고쳤더라도

    이해 할 수 있으리라 밑습니다...



    도움이 되었기를...









    바보 wrote:

    > C로 된 프로그램인데요 이걸 델파이로 바꿔야 되거든요.

    > 두개의 에디트박스에서 입력받아서 버튼을 누르면 값이 나와야 되는데여 모르겠어요..

    > 온도랑 습도를 입력받아서 이슬점 온도를 구하는 공식인데요 이것 좀 꼭 델파이로 풀어주세여.. 꼭

    >

    > float DewPointCal(float Temperature,float Humidity)

    > {

    > if(temperature<=-9999.9f||Humidity<=-9999.9f) return -9999.9f;

    > if( Humidity == 0.0f) return -9999.9f;

    > double E = Humidity*0.0611*pow(10,(7.5*Temperature)/(237.3+Temperature)));

    > double DP = (237.3*log10(E)-186.527)/(8.286-log10(E));

    > return (float)DP;

    > }

    >

  • Profile
    김선호 2000.09.22 08:38
    > float DewPointCal(float Temperature,float Humidity)

    > {

    > if(temperature<=-9999.9f||Humidity<=-9999.9f) return -9999.9f;

    > if( Humidity == 0.0f) return -9999.9f;

    > double E = Humidity*0.0611*pow(10,(7.5*Temperature)/(237.3+Temperature)));

    > double DP = (237.3*log10(E)-186.527)/(8.286-log10(E));

    > return (float)DP;

    > }



    제가 알고 있어서 답변하는 건 아니구요^^;

    머 다 아시겠지만 씨와 델파이 사이의 표현상의 차이를 알아야 할 것 같네요...

    제 생각으로 책이나 도움말 그리고 VCL(ex Window.pas) 을 꼭 보시는게 어떨지...

    혹 델파이는 아시는데 씨를 모르시면 씨의 책을..



    씨에서의 float 에 대응하는 델에서의 데이터 타입

    씨에서의 double 에 대응하는 델에서의 데이터 타입

    씨에서의 pow함수에 해당하는 델의 함수

    씨와 델에서의 데이터 표현 양식 (이를 테면 format 어쩌구..)

    씨와 델에서의 형 변환

    씨와 델에서의 로그함수..



    저도 모르니까..



    너무 화내지 마세요...