웹마스터 팁
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
rand함수와 mt_rand함수의 비교
2004.07.30 07:53
<?
for($i=0; $i<10000000; $i++) {
$rand=rand(1,2) + $rand;
$mt_rand=mt_rand(1,2) + $mt_rand;
}
$rand = $rand/10000000;
$mt_rand = $mt_rand/10000000;
echo "rand() : $rand
";
echo "mt_rand() : $mt_rand";
?>
이렇게 초기화하지 않고 실행해 보았습니다.
1.5에 가까울수록 좋…
1회(1000만번)
rand() : 1.4999938
mt_rand() : 1.499917
2회(2000만번)
rand() : 1.500004
mt_rand() : 1.4998595
3회(3000만번)
rand() : 1.4999983
mt_rand() : 1.4998941
4회(4000만번)
rand() : 1.4999975
mt_rand() : 1.5002273
5회(5000만번)
rand() : 1.4999962
mt_rand() : 1.4999263
rand 함수의 평균값 : 1.49999796 (1.5 - 0.00000204)
mt_rand 함수의 평균값 : 1.49996484 (1.5 - 0.00003516)
'mt_rand가 향상된 난수값을 발생시킨다'라고 되어 있지만 rand가 더 낫네요.
그저 속도만 더 빠른 것이었나… 물론 직접 초기화한 값은 다르겠지만,
나는 귀차니스트
for($i=0; $i<10000000; $i++) {
$rand=rand(1,2) + $rand;
$mt_rand=mt_rand(1,2) + $mt_rand;
}
$rand = $rand/10000000;
$mt_rand = $mt_rand/10000000;
echo "rand() : $rand
";
echo "mt_rand() : $mt_rand";
?>
이렇게 초기화하지 않고 실행해 보았습니다.
1.5에 가까울수록 좋…
1회(1000만번)
rand() : 1.4999938
mt_rand() : 1.499917
2회(2000만번)
rand() : 1.500004
mt_rand() : 1.4998595
3회(3000만번)
rand() : 1.4999983
mt_rand() : 1.4998941
4회(4000만번)
rand() : 1.4999975
mt_rand() : 1.5002273
5회(5000만번)
rand() : 1.4999962
mt_rand() : 1.4999263
rand 함수의 평균값 : 1.49999796 (1.5 - 0.00000204)
mt_rand 함수의 평균값 : 1.49996484 (1.5 - 0.00003516)
'mt_rand가 향상된 난수값을 발생시킨다'라고 되어 있지만 rand가 더 낫네요.
그저 속도만 더 빠른 것이었나… 물론 직접 초기화한 값은 다르겠지만,
나는 귀차니스트
댓글 6
-
플로렐라
2004.07.30 08:53
겨우 1, 2가지고는 정확도가-_-..; -
☺심심
2004.07.30 10:47
ㅡㅡ;
심심하셨군..;
(딴지아녜요) -
앳플군
2004.07.30 20:25
난수 생성의 원리는 뭘까~요?
어쨋든 컴퓨터는 인공지능 따위가 없기에, 난수 생성의 원리는 난수표에 있습니다. mt_rand 함수의 난수표가 훨씬 랜덤스럽죠.
.. 따라서 mt_rand 함수가 더 랜덤하게 뽑는다고 말하는 겁니다. -
TheMics
2004.07.30 14:03
평균이 아니라 표준편차를 비교해야지요;
그리고 어느 것이 더욱 좋은 난수를 발생하는가에 대한 물음은 "같다"라고 보시면 됩니다.
예전 버전에서는 mt_rand가 확실히 좋았습니다만 PHP가 버전업되면서
mt_rand()가 조금 빠르다 뿐이지 난수값에 있어서는 큰 차이가 없습니다. -
Pe-i
2004.08.01 21:34
평균을 비교하면...;
랜덤은 얼마나 더 평균차가 작냐보단 얼마나 더 다양하게가 중요 'ㅇ'!...
앳플군//어멋 난수표 'ㅇ'~? -
양영직
2004.11.01 03:03
안타깝게도 컴퓨터는 인간이 시키는 일만해서 스스로 난수를 생각해낼 능력이 없습니다-_-;......
제목 | 글쓴이 | 날짜 |
---|---|---|
정말 멋있는 글자 변환 스크립트 [12] | sythesis | 2003.11.07 |
자바스크립트로 작성한 그림맞추기 퍼즐게임 [2] | 김별 | 2003.11.05 |
자바스크립트로 윈도우 흉내내기 (?) [15] | 뒹굴리스트 | 2003.11.03 |
[초간단 자바스크립트!] 이미지 드래그하기..~~ [8] | ∑Ztxy | 2003.11.02 |
마우스 이벤트 발생시 문서 상,하단으로 이동 [3] | RedEye(kaist) | 2003.10.30 |
클릭하면 홈페이지를 시작페이지로 하는 소스... [7] | 젤군 | 2003.10.28 |
식대 계산기... ^^ [3] | 김주형 | 2003.10.27 |
더 이상의 필터링은 없다!!! [10] | 미친개 | 2003.10.26 |
[초간단 자바스크립트!] 자바로 플래시 따라하기! [3] | ∑Ztxy | 2003.10.15 |
스물을 세면 죽음이야~~~ [20] | 미친개 | 2003.10.14 |
[초간단 자바스크립트!] 트랜지션 공지사항!! | ∑Ztxy | 2003.10.13 |
플래시 크기 바꾸기 [IE/NS 겸용] [4] | teslaMINT | 2003.10.13 |
새창 띄운후 부모창 확인없이 닫기... [4] | PHASE | 2003.10.12 |
개판 오분전 - 이미지 뷰에 관한 한가지 힌트 [5] | 미친개 | 2003.10.11 |
[초간단 자바스크립트!] 날짜 카운터! 커플홈에 강추!! [15] | ∑Ztxy | 2003.10.08 |
개판 오분전 만년달력......ㅡ,.ㅡ [4] | 미친개 | 2003.10.08 |
게시판 스킨에 프린트 버튼 추가하기 [3] | PHASE | 2003.09.30 |
[초간단 자바스크립트!] 홈페이지에 FTP 폼 넣기?! [10] | ∑Ztxy | 2003.09.29 |
[초간단 자바스크립트(강의)!] 입력박스에 입력한 주소로 이동하기... | ∑Ztxy | 2003.09.27 |
[초간단 자바스크립트(강의)!] 풀스크린 창 띄우기... [3] | ∑Ztxy | 2003.09.27 |