플래쉬 언어는 제가 다루어 보지를 않아서 다소 중복되거나 엉터리 비슷한 부분도 있겠지만 결과물은 대충 원하는 대로 나오더군요.
아래 코드에 의해 매회 번호판을 새로 작성할 예정입니다.
머리 아프시겠지만 그냥 참조만 하시라고요. ^^;;
on (press){
var nn;
nn = 200; /* 응모자 수 */
rr = int(nn / 45) + 1; /* 응모자를 45줄로 세우기 위한 변수 */
var my_array:Array = new Array(); /* 번호를 저장하기 위한 배열 만듬 */
for (var i:Number = 0; i < nn; i++) my_array[i] = 0; /* 배열값을 초기화 */
for (var i:Number = 1; i < nn+1; i++) { /* 응모자 수만큼 무작위 숫자 맹글기 */
var my_check:Number=0;
while (my_check==0){ /* 무작위로 뽑아낸 번호가 먼저 뽑아낸 번호와 겹치는 것 막기 */
n = randRange(1, nn); /* 무작위 번호 뽑기 */
for (var j:Number = 0; j < i; j++){ /* 번호가 겹치는지 검사하는 부분 */
if (my_array[j] == n) { /* 만약 번호가 겹친다면 */
n = randRange(1, nn); /* 번호를 새로 추출 */
}
else { /* 번호가 겹치지 않으면 */
my_array[i] = n; /* 배열에 순서대로 저장하고 */
my_array[i] += " "; /* 칸을 띄우기 위한 부분 */
if (i % rr == 0) my_array[i] += "\n"; /* 숫자를 45줄로 만들기 위해 개행문자 삽입 */
my_check = 1;
}
}
}
}
a1 = my_array; /* 화면에 표시 */
function randRange(min:Number, max:Number):Number { /* 무작위 숫자 뽑는 함수 */
var randomNum:Number = Math.floor(Math.random() * (max - min + 1)) + min;
return randomNum;
}
}
※ 플래쉬 프로그램이 있다면 화면에 a1 이라는 텍스트 박스(속성 : 입력텍스트)를 만들고 버튼을 하나 만든 후 버튼의 액션에 위의 코드를 넣으면 됩니다.