게시판 본문 ASP, ASP.NET, IIS & Script - Read Only
re: 랜덤 함수에서요. |
---|
작성자: 송원석
작성일시: 2005-06-07 13:17,
조회수: 2,847
|
안녕하세요? 송원석입니다. ^_^
먼저 약간의 개선이 필요할 것 같습니다. 지금 올려주신 코드를 보면 무작위로 네 자리 숫자를 생성하시는데, 네 자리를 모두 따로따로 생성하시더군요. 이렇게 되면 문제에 집중하기가 매우 어렵게 됩니다. 따라서 먼저 이 부분부터 개선을 해보죠. 물론 그렇게 해도 문제를 해결하실 수는 있겠지만 다음과 같은 방법이 더 간단하리라고 생각합니다. 1. 먼저 임의의 난수를 생성합니다. 2. 네 자리 숫자를 생성해야 하므로 가능한 최대의 값은 9999 입니다. 3. 이제 1 번에서 생성된 값을 최대값인 9999 + 1, 즉 10000 으로 나눕니다. 4. 나머지 값을 구합니다. 기본적인 수학 공식에 따라 이 나머지 값은 항상 0 ~ 9999 입니다.어떻습니까, 매우 간단하죠? 코드자체도 매우 간결해지리라고 봅니다. 이렇게 얻은 값을 문자열로 바꾸고 다음과 같은 방법을 통하여 네자리 형태로 치환합니다. strValue = Right("0000" & intValue, 4)벌써 이 정도만 개선해도 속도에 대한 걱정은 일부나마 해결이 될 것 같습니다. 그 다음에 데이터베이스의 기존값과 비교하는 부분은 어쩔수 없이 루프를 돌리셔야 할 것 같습니다. 대략 다음과 비슷하겠죠. 1. 루프 시작 2. 난수생성 3. 데이터베이스 조회 4. 기존에 존재하는 값 여부 점검 5. 새로운 값이면 루프를 빠져나가고 후속처리 6. 기존에 존재하던 값이면 루프를 계속 실행 7. 루프문 끝이 부분은 별다른 아이디어를 생각해내지 못하는한 실행 속도에 있어서 별다른 개선 방법이 없을 것 같네요. 그야말로 운에 맞기는 수 밖에요. ^_^ 감사합니다. |
IP 주소: 203.231.54.9
|
전체 2,095 건의 게시물,
84 페이지로 구성된
ASP, ASP.NET, IIS & Script 게시판의
40 페이지입니다.
게시물 | ||||
---|---|---|---|---|
1,154 |
궁금이 |
2005-06-07 | 1,037 | |
2005-06-07 | 2,847 | |||
1,152 |
바보똥개 |
2005-06-03 | 815 | |
1,151 | 2005-06-02 | 2,878 | ||
1,150 |
re: 오랜만에 들리네요. [1] |
2005-06-03 | 2,941 | |
1,149 |
훈스 |
2005-05-30 | 879 | |
1,148 | 2005-05-30 | 2,874 | ||
1,147 |
작업취소 메세지... [1] |
훈스 |
2005-05-30 | 775 |
1,146 |
훈스 |
2005-05-30 | 807 | |
1,145 |
부푸러 |
2005-05-28 | 869 | |
1,144 | 2005-05-28 | 2,823 | ||
1,143 |
궁굼 |
2005-05-27 | 848 | |
1,142 | 2005-05-27 | 2,822 | ||
1,141 |
궁굼 |
2005-06-03 | 778 | |
1,140 | 2005-05-27 | 4,722 | ||
1,139 | 2005-05-27 | 2,989 | ||
1,138 | 2005-05-27 | 2,872 | ||
1,137 | 2005-05-27 | 2,787 | ||
1,136 | 2005-05-26 | 2,887 | ||
1,135 | 2005-05-27 | 2,802 | ||
1,134 | 2005-05-25 | 2,970 | ||
1,133 | 2005-05-25 | 3,864 | ||
1,132 | 2005-05-26 | 3,048 | ||
1,131 | 2005-05-26 | 2,995 | ||
1,130 | 2005-05-13 | 3,462 |