※요약
C언어나 C++ 등에서 소수점 특정 자릿수 반올림하는 방법입니다. 매크로 함수와 일반 함수 2가지로 구현되어 있으며, 다른 곳에서 사용할 땐 원하는 함수만 복사해서 쓰면 됩니다.
※예제
#include <stdio.h> #include <cmath> #define ROUNDING(x, dig) ( floor((x) * pow(float(10), dig) + 0.5f) / pow(float(10), dig) ) double Rounding( double x, int digit ) { return ( floor( (x) * pow( float(10), digit ) + 0.5f ) / pow( float(10), digit ) ); } int main( ) { printf( "%g\n", ROUNDING( 9.3453456, 3 ) ); printf( "%g\n", Rounding( 9.3453456, 3 ) ); printf( "%g\n", ROUNDING( 9.3453456, 5 ) ); printf( "%g\n", Rounding( 9.3453456, 5 ) ); return 0; }
※결과
'예제 모음 > C/C++' 카테고리의 다른 글
[C++11] 원 안에만 점 찍기 (0) | 2014.09.02 |
---|---|
[C언어] rand 함수를 이용한 로또 프로그램 (1) | 2014.04.08 |
[C언어] 재귀 함수 - 10진수 -> 2진수 변환 (1) | 2014.03.20 |
[C언어] 어떤 수 x가 2의 n승인지 판별하는 함수 (0) | 2014.03.13 |
[C언어] 재귀 함수 - 이진 탐색 (Binary Search) (0) | 2013.12.05 |
[C언어] 재귀 함수 - 거듭제곱 (power) (3) | 2013.12.05 |
[C언어] 재귀 함수 - 팩토리얼 (Factorial) (3) | 2013.12.05 |