728x90
반응형

[Java] 기초알고리즘 - 12. 반올림(ROUND) 함수 만들기

 

 

  1. //내가 만든 반올림 함수
  2.  
  3. public class MyRound {
  4.     public static void main(String[] args) {
  5.         double d = 1234.5678;
  6.         //Math 클래스의 round메서드 이용
  7.         System.out.println(Math.round(d)); //1235 ; 소수첫째자리에서 반올림되서 정수로 반환됨
  8.         System.out.println(Math.round(d*100)/100.0d); //1234.57; 소수셋째자리에서 반올림되서 소수둘째자리까지 표시
  9.        
  10.         //사용자 정의 MyRound 메서드 이용
  11.         System.out.println(MyRound(d,2)); //1234.57;
  12.         System.out.println(MyRound(d,3)); //1234.568;
  13.        
  14.     }
  15.    
  16.     /**
  17.      * 내가 만든 반올림 함수
  18.      * @param num - 실수형
  19.      * @param pos - 자릿수 : 반올림되어질 자리
  20.      * @return 반올림된 수
  21.      */
  22.     public static double MyRound(double num, int pos){
  23.        
  24.         // double temp = (int)((num+0.05)*10) / 10.0; // xxx.x
  25.        
  26.         //[1]
  27.         double result = 0.0;
  28.         double half = 0.5;
  29.         double factor = 1;
  30.        
  31.         //[2]
  32.         for (int i = 0; i< pos; i++){
  33.             half *= 0.1;
  34.             factor *= 10;
  35.         }
  36.         result = (int)((num+half)*factor)/(double)factor;
  37.        
  38.         //[3]      
  39.         return result;     
  40.     }
  41. }
  42.  

 

 

 

 

결과보기)

 

 

1235

1234.57

1234.57

1234.568

 

728x90
반응형
블로그 이미지

nineDeveloper

안녕하세요 현직 개발자 입니다 ~ 빠르게 변화하는 세상에 뒤쳐지지 않도록 우리모두 열심히 공부합시다 ~! 개발공부는 넘나 재미있는 것~!

,