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


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


LIST ALL
Posted by 권선중2004-07-17 18:49:20, Hit : 4780
[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
117
   [펌] 음악 재생기 만들기 [1]
위자드 2002/11/24  4867
116
   [팁]윈도우 API 함수
Mettok`s 2002/12/10  4856
115
   [tip] 매체 재생기 파일 오류.. 해결법 [2]
권선중 2003/01/09  4855
114
   업데이트에 대해서... 2번째..... [5]
위자드 2003/11/04  4852
113
   '정보창보여'의 미지의 세번째 인자의 비밀 [5]
지상현 2004/05/20  4850
112
     [re] 나른한 일요일 오후에의 잡설 [1]
지상현 2005/11/13  4840
111
   zip 파일 압축프로그램 작은발견.. [3]
날개달기 2003/05/19  4833
110
   창조의 구문강조를 html에 쉽게 적용하자.. [3]
변혁수 2006/06/21  4833
109
   Q/A에 올렷던 '사용자함수(dll) 중복 감시기' 손봐서 이곳에 ...
바람 2007/06/23  4827
108
     [re] SYSTEMFILE 구조체
박종훈 2009/02/22  4814
107
   프로젝트 만들 때 생기는 .cfg 파일
지상현 2011/01/29  4813
106
   배열 버그 해결법
성인e 2009/11/07  4812
105
   난수 사용
Pueding 2003/07/06  4796
104
   반투명화 기법 by 권선중님 [1]
Pueding 2003/07/06  4794
103
   프로젝트 파일 (.nhp)과 창 파일 (.nhw)은 같은 폴더에 있어...
지상현 2011/01/30  4781

   [tip] 균일한 랜덤재생하기.. [3]
권선중 2004/07/17  4780
101
   [초보를 위해] 반복문 + 리스트박스 혼합 테스트
한수훈 2008/11/30  4768
100
   CreateallCOM 에서 ActiveX 사용이 가능해질경우 가능한일 한... [5]
박재성 2007/08/11  4765
99
   동화+ 멀티버튼 활용하기..(소스제공,오류 수정본) by 권선중님
Pueding 2003/07/06  4763
98
   창조로 컴퓨터 제어? [2]
박재성 2008/05/25  4762
97
   [끼적 Tip] 다계정 로그인 구현 [2]
권선중 2005/06/26  4759
96
   '찌끼' 속성의 분석
박종훈 2010/07/02  4753
95
   [왕! 초보자용] 상태 표시줄 [2]
위자드 2003/01/01  4746
94
   [팁] 팝업메뉴 만들기 [초보용] [5]
강성민[FreeCreate] 2005/03/04  4742
93
   [펌] 반투명화 기법
위자드 2002/11/24  4734
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이희철
로그인