데이지랑 노가리노가리 하다가

진숙이 나이가 24살인지 25살인지 둘다 가물가물해서

24.5살로 쇼부 보고 Math.round( 24.5 ) = 25살로 결정한 것을 계기로

(뭔 계기가 -_-;;;)

예전에 어디선가 반올림할때 Math.round( n ) 보다 Math.floor( n + 0.5 ) 가 빠르다는 것을 본거 같아서

생각난 김에 한번 해봤습니다.

var len: int = 1000000;

var time: int = getTimer();

while( len-- )
     //floor();     // 237, 239, 232, 233, 236 = 235.4
     round();     // 247, 240, 238, 238, 238 = 240.2

trace( getTimer() - time );

function floor(): void
{
     var a: int = Math.floor( 1.5 + 0.5 );
}

function round(): void
{
     var a: int = Math.round( 1.5 );
}

100만번 돌린 결과

floor( n + 0.5 ) 는 235.4 ms 가 나왔고

round( n ) 는 240.2 ms 가 나왔네요.

큰 차이는 아니겠지만

굳이 비율로 따지자면 약 1.9% floor( n + 0.5 ) 가 더 빠른걸로 측정이 됐네요.

측정 방법이나 구문이 잘못된 점 있으면 알려주세요^^



p.s) 이런거 재밌어~





빈꿈님 블로그에 있던 카툰을 옮겼습니다.

제가 20살부터 컴퓨터를 업으로 삼았으니까

하루에 평균 8시간으로 잡고 29살인 지금 9년으로 계산하면

3287.25(365.25*4)일이 나오는군요.

3287.25 * 8 = 26298 시간이 나오네요.

...

...

...

ㅇ_ㅇ!!!



가장 어려운 일 세가지가 있으니

첫째는, 비밀을 지키는 것이요.

둘째는, 타인에게 받은 피해를 잊는 것이요.

셋째는, 한가한 시간을 효과적으로 활용하는 것이다.


- 키케로 -

+ Recent posts