정수 유형을 사용하는 경우에만 쉽게 반올림을 수행하는 방법을 찾으려고 시도했습니다. 이 작업을 수행하는 아래integer arithemetic rounding
Value1=76
Value2=305
Tmp1=(10 * Value1)/Value2 = 2,49 = 2 (integer)
Tmp1=(Tmp1 + 5)/10 = (2 + 5)/10 = 0.7 = 0 (integer)
있는가 반올림 더 나은 방법 - -
Value1=260
Value2=305
Tmp1=(10 * Value1)/Value2 = 8.52 = 8 (integer)
Tmp1=(Tmp1 + 5)/10 = (8 + 5)/10 = 1.3 = 1 (integer)
예 2를 반올림
예 1 : 다음과 같은 솔루션을 발견하셨습니까?
같은 문제가있는 다른 사용자에게 도움이 될지도 모릅니다.
ansi c - 임베디드 CPU에서 실행 - 전혀 부동 소수점 유닛. 대부분의 경우에 당신이 코드에 완전한 라이브러리를 추가해야 할 경우처럼, 나는 c 라이브러리의 사용을 피하려고합니다. 하나 또는 두 개의 기능 만 사용하려고합니다. –