안녕하세요,
말 그대로 주어진 소수 몇째 자리에서 반올림 해주는 그런 함수 없나요? 예를 들면 1.2345 를 셋째 자리에서 반올림해서 1.23 뭐 이렇게 만들어 주는 함수요..
그냥 반올림/반내림해서 정수로 만드는 건 쉽게 보이는데, 이런 함수는 원래 있는지 모르겠네요.
조언 부탁드립니다. :)
#include <math.h>
double d = 1.2345; double result = ceil((d * 100.) - .5) / 100.;
// 어느 플랫폼에선가 ceil/floor 대신 roundup/rounddown 함수를 사용했던 기억이... 가물가물하네요...
담배 고만 펴야겠다...
사족: ceil... 음수일 경우에 문제가 있는 구현이 있으므로 꼭 확인하시구요. 만약 문제 있는 구현이라면 음수는 floor로 다르게 처리하는 것하고 *100 할 때의 지수 넘침을 조심하셔야 합니다.
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
#include <math.h>double d = 1.
#include <math.h>
double d = 1.2345;
double result = ceil((d * 100.) - .5) / 100.;
// 어느 플랫폼에선가 ceil/floor 대신 roundup/rounddown 함수를 사용했던 기억이... 가물가물하네요...
담배 고만 펴야겠다...
사족: ceil... 음수일 경우에 문제가 있는 구현이 있으므로 꼭 확인
사족: ceil... 음수일 경우에 문제가 있는 구현이 있으므로 꼭 확인하시구요. 만약 문제 있는 구현이라면 음수는 floor로 다르게 처리하는 것하고 *100 할 때의 지수 넘침을 조심하셔야 합니다.
댓글 달기