Q&A

  • 나누기
델파이를 처음 겪어보는 사람입니다.

다름이 아니오라

제가 상하수도 프로그램을 만들려고 도전 하고있는데

글쎄 처음 만들어보는 프로그램이라 잘 모른것이 있어서요.

나누기를 해야 하는데 div를 쓰면 소숫점 밑에는 표현이 않돼거든요

/를 해도 않돼는데요

소숫점 표현을 할려면 어떻게 해야 하나요

너무 쉽다고 하지말고요 자세하게 제 메일로 보내 주셨으면 감사하겠습니다.

누군 처음 부터 잘 했나요.

부탁합니다.

1  COMMENTS
  • Profile
    조규춘 2000.04.29 16:15
    한솔 wrote:

    > 델파이를 처음 겪어보는 사람입니다.

    > 다름이 아니오라

    > 제가 상하수도 프로그램을 만들려고 도전 하고있는데

    > 글쎄 처음 만들어보는 프로그램이라 잘 모른것이 있어서요.

    > 나누기를 해야 하는데 div를 쓰면 소숫점 밑에는 표현이 않돼거든요

    > /를 해도 않돼는데요

    > 소숫점 표현을 할려면 어떻게 해야 하나요

    > 너무 쉽다고 하지말고요 자세하게 제 메일로 보내 주셨으면 감사하겠습니다.

    > 누군 처음 부터 잘 했나요.

    > 부탁합니다.



    혹시 변수를 잘못넣어 주거나 한것은 아닙니까?

    정수형으로 주었다던가 하는 식으로 말이지요!

    저는 "/" 로 이용해서 잘 계산 되던데요!



    그럼 우선 나눗셈에 대하여 알아보지요!



    비쥬얼 베이직 같은 경우는 실수나 정수형 나눗셈 계산이 똑같이 "/" 인데....

    델파이에서 쓰는 오브젝트 파스칼의 경우는

    다음과 같습니다.



    / -> 실수형 나눗셈..

    div -> 정수형 나눗셈..

    mod -> 나머지 계산... -> (비쥬얼 베이직도 같음)



    제가 잠시 만든 소스를 보여드리지요...



    // 결과를 보여주기 위한 곳이기도 하다.

    procedure Tfrmcal.SBEqulClick(Sender: TObject);

    begin

    if labelresult.caption <> '' then

    begin

    case prevOp of

    AddOp : tmpInt := StrTofloat(labelresult.caption) + tmpInt; // 덧셈이면...

    SubOp : tmpInt := tmpInt - StrTofloat(labelresult.Caption); // 뺄셈이면...

    DivOp : tmpint := tmpint / StrTofloat(labelresult.caption); // 나눗셈이면..

    end;

    labelresult.Caption := floatToStr(tmpInt);

    labelstatus.Caption := '';

    resultbool := true; // 연산을 했으니깐 다시 버튼을 누를 경우 지워지면서 입력한다. 푸힝.

    tmpInt := 0;

    end;

    end;



    변수형은

    저는 tmpint를 전역변수로 double로 해서 했지요!

    한번 다시 도전해 보셔요!

    조규춘 올림.