Develop

[JavaScript] 소수점 올림, 버림, 반올림 사용방법

issuemaker99 2024. 10. 21. 16:20
728x90

1. 소수점 올림 (Math.ceil)

Math.ceil() 함수는 소수점을 기준으로 숫자를 올림 처리합니다. 즉, 소수점 이하가 존재하면 무조건 큰 수로 올립니다.

예제

let number1 = 4.2;
let number2 = -4.2;

let ceil1 = Math.ceil(number1); // 5
let ceil2 = Math.ceil(number2); // -4

console.log(`4.2의 올림: ${ceil1}`); // 결과: 5
console.log(`-4.2의 올림: ${ceil2}`); // 결과: -4

 

결과:

  • 4.2는 올림하면 5
  • -4.2는 올림하면 -4 (음수일 때는 작은 쪽으로 이동)

설명

  • Math.ceil()은 소수점 이하가 0.1이라도 존재하면 무조건 큰 값으로 올립니다.
  • 음수일 경우에는 절대값이 작은 쪽으로 올림합니다.

2. 소수점 버림 (Math.floor)

Math.floor() 함수는 소수점을 기준으로 숫자를 버림 처리합니다. 즉, 소수점 이하를 모두 버리고 낮은 정수로 내립니다.

예제

let number1 = 4.7;
let number2 = -4.7;

let floor1 = Math.floor(number1); // 4
let floor2 = Math.floor(number2); // -5

console.log(`4.7의 버림: ${floor1}`); // 결과: 4
console.log(`-4.7의 버림: ${floor2}`); // 결과: -5

 

결과:

  • 4.7은 버림하면 4
  • -4.7은 버림하면 -5 (음수일 때는 절대값이 큰 쪽으로 이동)

설명

  • Math.floor()는 소수점을 무시하고 무조건 낮은 정수로 내립니다.
  • 음수일 경우, 절대값이 큰 쪽으로 내려가는 특징이 있습니다.

3. 소수점 반올림 (Math.round)

Math.round() 함수는 소수점을 기준으로 반올림을 합니다. 소수점 첫째 자리가 0.5 이상이면 올림, 그보다 작으면 버림 처리합니다.

예제

let number1 = 4.5;
let number2 = 4.4;

let round1 = Math.round(number1); // 5
let round2 = Math.round(number2); // 4

console.log(`4.5의 반올림: ${round1}`); // 결과: 5
console.log(`4.4의 반올림: ${round2}`); // 결과: 4

 

결과:

  • 4.5는 반올림하면 5
  • 4.4는 반올림하면 4

설명

  • Math.round()는 소수점이 0.5 이상일 때는 올림, 그렇지 않으면 버림 처리를 합니다.
  • 반올림은 일상생활에서 자주 사용되는 방식입니다.

4. 소수점 자릿수 반올림 (toFixed)

소수점 아래 자릿수를 지정하여 반올림하려면 toFixed() 메소드를 사용합니다. 이 함수는 원하는 소수점 자리까지만 남기고 반올림 처리된 문자열을 반환합니다.

예제

let number = 4.56789;

let roundedTo2 = number.toFixed(2); // 4.57
let roundedTo3 = number.toFixed(3); // 4.568

console.log(`4.56789의 소수점 둘째 자리 반올림: ${roundedTo2}`); // 결과: 4.57
console.log(`4.56789의 소수점 셋째 자리 반올림: ${roundedTo3}`); // 결과: 4.568

 

결과:

  • 소수점 둘째 자리까지 반올림: 4.57
  • 소수점 셋째 자리까지 반올림: 4.568

설명

  • toFixed()는 숫자를 소수점 아래 원하는 자리까지 반올림하여 문자열로 반환합니다.
  • 반환된 값은 문자열이므로 계산이 필요한 경우 parseFloat()로 변환할 수 있습니다.

5. 소수점 자릿수 올림과 버림 처리

소수점 자릿수에서 올림, 버림 처리를 하려면, 아래와 같이 10의 제곱수를 곱한 후 다시 나누는 방식으로 구현할 수 있습니다.

1) 소수점 자릿수 올림

function ceilToDecimalPlace(num, decimalPlaces) {
    let factor = Math.pow(10, decimalPlaces);
    return Math.ceil(num * factor) / factor;
}

let number = 4.1234;
let result = ceilToDecimalPlace(number, 2); // 소수점 둘째 자리에서 올림: 4.13
console.log(result);

 

2) 소수점 자릿수 버림

function floorToDecimalPlace(num, decimalPlaces) {
    let factor = Math.pow(10, decimalPlaces);
    return Math.floor(num * factor) / factor;
}

let number = 4.9876;
let result = floorToDecimalPlace(number, 2); // 소수점 둘째 자리에서 버림: 4.98
console.log(result);

 

JavaScript에서는 다양한 소수점 처리 방식이 있으며, 숫자의 상황에 맞게 올림, 버림, 반올림을 선택해서 사용할 수 있습니다. Math.ceil(), Math.floor(), Math.round()와 같은 내장 함수를 통해 기본적인 소수점 처리를 쉽게 할 수 있으며, toFixed() 메소드를 이용해 특정 자릿수까지의 반올림도 가능합니다.

LIST