728x90
반응형
728x170
▶ Math 클래스 : 실수 올림/반올림/내림하기 예제
using System;
double value = 4.5343;
double result1 = Round(value, 4, RoundType.Ceiling );
double result2 = Round(value, 4, RoundType.Round );
double result3 = Round(value, 4, RoundType.Truncate);
Console.WriteLine($"값 : {value }");
Console.WriteLine($"올림 : {result1}");
Console.WriteLine($"반올림 : {result2}");
Console.WriteLine($"내림 : {result3}");
728x90
▶ Math 클래스 : 실수 올림/반올림/내림하기
using System;
/// <summary>
/// 반올림 타입
/// </summary>
public enum RoundType
{
/// <summary>
/// 올림
/// </summary>
Ceiling,
/// <summary>
/// 반올림
/// </summary>
Round,
/// <summary>
/// 내림
/// </summary>
Truncate
}
#region 반올림하기 - Round(value, roundDigit, rountType)
/// <summary>
/// 반올림하기
/// </summary>
/// <param name="value">값</param>
/// <param name="roundDigit">반올림 자리수</param>
/// <param name="rountType">반올림 타입</param>
/// <returns>반올림 결과</returns>
public double Round(double value, int roundDigit = 3, RoundType rountType = RoundType.Truncate)
{
double temporaryValue = Math.Pow(10, roundDigit) / 10;
double resultValue = Math.Truncate(value * temporaryValue) / temporaryValue;
switch(rountType)
{
case RoundType.Ceiling : resultValue = Math.Ceiling (value * temporaryValue) / temporaryValue; break;
case RoundType.Round : resultValue = Math.Round (value * temporaryValue) / temporaryValue; break;
case RoundType.Truncate : resultValue = Math.Truncate(value * temporaryValue) / temporaryValue; break;
}
return resultValue;
}
#endregion
728x90
반응형
그리드형(광고전용)
'C# > Common' 카테고리의 다른 글
[C#/COMMON] 비트 단위 연산하기 (0) | 2020.08.06 |
---|---|
[C#/COMMON] 윈도우즈 프로세스 트리 표시하기 (0) | 2020.08.06 |
[C#/COMMON] List<T> 클래스 : ForEach 메소드 사용하기 (0) | 2020.07.22 |
[C#/COMMON] 각도 정규화하기 (0) | 2020.07.18 |
[C#/COMMON] Math 클래스 : IEEE 754 실수 계산하기 (0) | 2020.07.17 |
[C#/COMMON] ProcessStartInfo 클래스 : Verb 속성을 사용해 그림판에서 이미지 편집하기 (0) | 2020.07.07 |
[C#/COMMON] IN 조건 문자열 구하기 (0) | 2020.06.10 |
[C#/COMMON] Buffer 클래스 : BlockCopy 메소드를 사용해 배열 복사하기 (0) | 2020.06.09 |
[C#/COMMON] FileInfo 클래스 : 특정 디렉토리 경로에서 파일 크기가 0보다 큰 파일 정보 리스트 구하기 (0) | 2020.06.08 |
[C#/COMMON] Ping 클래스 : 네트워크 연결 여부 구하기 (0) | 2020.06.04 |
댓글을 달아 주세요