창조유저그룹-커즈닷컴
Window close
ID :     PASS :   
   
  처음으로
  창조
  창조 소개
창조 다운로드
CUGz.com 소개
온라인 도움말
  커뮤니티
  가입인사
자유게시판
Q/A게시판
TIP/TECH
열린강좌
자주하는질문
아이디어게시판
  자료실
  소스자료실
프로그램자료실
기타자료실
명예의 전당
이미지 자료실
  지원/기타
  표준용어재정
구글 웹서치  
관리자 전용


창조 팁
- '창조' 에 관한 팁을 올리는 곳입니다. 다수의 이미지가 필요하시면 아래 '이미지 자료실' 에 업로드 후 불러와 주세요..


LIST ALL
Posted by 권선중2004-07-17 18:49:20, Hit : 4768
[tip] 균일한 랜덤재생하기..
Homepage : http://ever2ksj.nalove.org
Post URL : http://cugz.sjworks.net/bbs/zboard.php?id=tip&no=206
요즘 몇몇분들이 mp3재생기를 만드시기에 저도 몇칠전부터 쪼짝 쪼짝만들고있습니다..
그러다 문득 그간의 랜덤재생방식을 보니..그저 난수를 이용하여 재생하는 방식을 택한것을 보고 몇가지 테스트를 해봤습니다..
모든 노래가 랜덤하게 나오는 것이 아니라 어떤노래는 자주 나오고 어떤 노래는 안나온등 균일하게 나오지 않는 현상을 발견...V^^V
그래서 간단히 팁하나 재공할까합니다..


문자:재생번호
실수:수,재생수;
///위쪽은 아시죠..^^
반복
{ 수:=난수(창1.리스트박스0.내용.줄수);   // 난수를 이용하여 재생할곳을 선택
   만일( 0 = 문자찾아(수를문(수), 재생번호))  // 재생유무 검사 0:재생않했음
   { 재생수:=재생수+1;                                   // 총재생수를 카우트함
     재생번호:=재생번호+수를문(수)+".";            // 현재곡을 선택했을을 저장
   }                                                            }                                                         까지(재생수=리스트박스0.내용.줄수);              // 리스트 의 모든곡을 재생할때까지 반복
재생번호:="";

캬 간단하네용..^^ 요것이 핵심입니다..

여기서 주위할것은..
재생번호:=재생번호+수를문(수)+".";
요부분입니다..반드시 .(점)또는 기타 문자로 나누어 주어야 합니다..
1 15 6 7번곡인데..
11567  <--- 이렇게 저장되면 1 11 15 56 67번이 모두 포함되게 됩니다..
그래서
1.15.6.7. 이렇게 해주는 것입니다..

그리고 반드시 모든곳을 재생후에는 재생목록을 초기화 해주는것 을 빼먹음 안됩니다..
만일 빼먹고 재실행시 무한 루푸에 빠지게 됩니다..

재생목록:=""; 또는 안전을 위해.. 명령준간에 3회 카운트 되지않는경우 빠져나오는 명령을 집어 넣는것도 좋겠죠..

질문은 Q&A를 통해서..^^
아 그리고 적용법은 아시죠...



ps.이진백   2004-07-18 PM 4:48:33  
이거 말고도 난수와 거의 모든 Random 명령어는 끝 수를 반환하는 경우가 많습니다.(특히, 자바 같은거)
이래서... 저는 난수1이 끝 번호일 경우 난수2를 구해 끝 번호라면 다시 난수1 이런식으로 하는 방법을 계획중이었는데... 그럴 필요가 없군요.
ps.이진백   2004-07-18 PM 4:49:45  
난수초기화; 이런거 있을텐데. 그거를 프로그램 실행시 먼저 하세요.
그러지 않고 확인결과 첫번째 난수결과가 0입니다.
권선중   2004-07-19 PM 9:58:46  
수정했습니다..
만일( 0 <> 문자찾아(수를문(수), 재생번호))
가 아니고
만일( 0 = 문자찾아(수를문(수), 재생번호))
입니다.. 즉 문자검사시.. 없는경우 0이 반환됩니다..
LIST ALL               GO TO THE TOP


N
   Subject
Posted by
Date
H
142
   [팁#13] 여러 파일을 동시 삭제할때
ps.이진백 2004/07/20  5501

   [tip] 균일한 랜덤재생하기.. [3]
권선중 2004/07/17  4768
140
   [팁#12] 효율적인 반복문 4가지 팁 [11]
ps.이진백 2004/07/16  5837
139
   마우스 커서관련팁. [6]
이시영 2004/07/16  4993
138
   [팁#11] 진리형 팁 두번째 [5]
ps.이진백 2004/06/22  4963
137
   단축키 만들기... [6]
손상진 2004/06/17  5822
136
   stream 에대해서 물어본거같은데 - -;; [3]
날개달기 2004/05/28  5054
135
   URLTODOWNLOAD 사용시... [3]
날개달기 2004/05/28  5454
134
   객체수에 대한 정보.. [4]
김진일 2004/05/25  4539
133
   xp에서의 0.76닫기 아이콘 등 제대로 쓰기 [2]
정성우 2004/05/24  5109
132
   '정보창보여'의 미지의 세번째 인자의 비밀 [5]
지상현 2004/05/20  4838
131
   [헛소리] 창조에서 동적 메모리 할당에 대해서 -_- [7]
지상현 2004/05/20  5918
130
   [알고리즘] 팩토리얼 구하는 프로그램 작성 [4]
느와르닷넷 2004/05/16  6289
129
   [팁#10] 진리형을 사용할 때 유의할 점 [5]
ps.구루 2004/05/16  5317
128
   ㅎ메모, 스크롤바 블록으로 자동으로 찾아가기.. [7]
손상진 2004/02/12  5711
127
   프로그램 버전업 업데이트....
위자드 2004/02/03  5368
126
   [팁#9] 정보창보여를 알아본 결과
ps.구루 2004/01/07  5603
125
   [알아두기] 그림판...그림할당해..
권선중 2003/12/26  4920
124
   [활용]그림판 사진 합성 방법 [1]
권선중 2003/12/26  8584
123
   [팁#8] 콤보박스에 감춰진 팁 [3]
ps.구루 2003/12/18  5671
122
  비밀글입니다 gplay로 소리 재생하기
쵸우싸진 2003/11/21  10
121
   [팁] 나만의 스타일 나만의 팝메뉴 [6]
권선중 2003/11/18  5606
120
   [팁] 웹 DB와 창조의 연결 [3] [1]
권선중 2003/11/17  5141
119
   [팁] 웹 DB와 창조의 연결 [2]
권선중 2003/11/17  5154
118
   [팁] 웹 DB와 창조의 연결 [1]
권선중 2003/11/17  5276
LIST ALL   Prev [1][2][3][4][5][6][7][8] 9 [10]..[14] Next
Copyright 1999-2024 Zeroboard / skin by reedyfox in miniwini style
로그인
지우개 Expert 3.0
제작자 : 천호성 님 [LINK]
로그인
대박로또2005
제작자 : 최재일 님 [LINK]
로그인
1박종훈15292 점
2지상현8809 점
3손상진7388 점
4권선중6060 점
5이진백5174 점
로그인
가입일닉네임
05/31김동률
03/31홍형기
09/01o00pp99oo
12/27이재민
11/20이희철
로그인