미채택 완료

반올림 관련 답변좀요..

2015-04-23 (목) 18:19:38 3,858

round 사용하여 반올림 하는데..

이게 특정값에서 반올림이 안되는데요...

혹시 조언좀 주실분...

0.575  일경우  반올림하면   0.58  이 맞자나요?

근데 웹상에서 반올림 하면   이게  0.57 로 표기가 되는데...

다른숫자는 다 되는거 같은데.....   6, 7   이 두자리가 들어가면 반올림이 안되는데..

ex)    0.565   ,   0.575   

이 것들만 반올림이 안되고  그냥  표기가 되는데   혹시 경험 해보시거나 조언좀 주실분 계신가요 ㅠㅠ

참고로  php 4버전입니다;;  

4버전이라 안되나....흠...

|

답변 1개 / 댓글 2개

0.575  일경우  반올림하면   0.58  이 맞자나요?

=========================================

틀립니다.

반올림이라는 것은 무슨 자리에서 반올림한다는 기준이 있어야 합니다.

 

무슨 자리에서 반올림하시려는지요?​

 

 

근데 웹상에서 반올림 하면   이게  0.57 로 표기가 되는데.

===============================================

0.575인경우 소수 두째자리까지명시하며 세째자리에서 반올림을 한다면​

0.58이 되어야 합니다. 잘못하셨나봅니다.

 

다른숫자는 다 되는거 같은데.....   6, 7   이 두자리가 들어가면 반올림이 안되는데

=================================================================

그럴리가 없습니다. 반올림 하는 방법을 잘못하셨습니다.

 

소수 몇째자리까지 표기를 원하시는지?

(소수몇째자리에서 반올림을 하시려는지?​)

그것부터 알려주셔야 바른 답변이 가능합니다.

 

 

반올림은 PHP버전과 관계없으며, 언어에 따라 달라지는게 아닌

수학입니다.

답변에 대한 댓글 2개

2015-04-24 (금) 10:25:49
답변을 여기다 적으면되나.... 소수점 자리수를 안적어놨군요^^;


표기는 소수점 2재짜리까지 노출 하려고 한거구요 3자리에서 반올림 합니다..


1번 round(0.545, 2);
2번 floor(0.575*100+0.5) / 100;

이렇게 테스트 했구요..

=> 값이 0.57 이렇게 나옴.... 이게 0.58 이 맞는거 같은데요..

이상한건 다른사이트에서 동일한 round(0.575,2) 로 했을대 값이... 0.58이나옴;;

차이는 php4, php5 구요

안되는곳이 4버전이구요

반올림은 버전과 상관없으시다고 하셨는데 이상하게 안되네요 ㅠㅠ

이것댐시 미쳐버리겟네요 ㅠㅠ
2015-04-24 (금) 11:40:07
0.545는 round(0.545,2),

0.575는 round(0.575,2)

이렇게 하면 될것 같은데요



이렇게 하면 될것 같습니다^^

round(원래수,2)


왜 아래처럼 하시는지 ? 그냥 round만 사용하면 되는것으로 알고이씁니다^^
floor(0.575*100+0.5) / 100;

답변을 작성하려면 로그인이 필요합니다.