[VB] 비쥬얼베이직 로또 추첨 프로그램
- 등록일 / 수정일
- 페이지 / 형식
- 자료평가
- 구매가격
- 2007.04.23 / 2019.12.24
- 23페이지 / hwp (아래아한글97)
- 평가한 분이 없습니다. (구매금액의 3%지급)
- 800원
최대 20페이지까지 미리보기 서비스를 제공합니다.
자료평가하면 구매금액의 3%지급!
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
추천 연관자료
- 하고 싶은 말
- 비쥬얼베이직으로 로또 추첨 프로그램 작성.
- 목차
-
● 문제개요
● 알고리즘
● 소스
● 실행화면
● 문제점
● 결과 및 느낀점
● frmParentsLotto
● frmChildShowResult
● frmChildChoose
● frmChildBuyLotto
- 본문내용
-
알고리즘
frmChildBuyLotto
이 폼에서는 자신이 번호를 선택하던가 자동으로 생성을 하여 데이터베이스에 번호를 저장해주는 기능을 한다. 우선 자동으로 선택을 했을시에는 수동선택에 만들어져 있는 checkbox들을 비활성화 시킨다.checkbox들은 배열들에 들어가 있기 때문에 반복문을 이용하여 비활성화 시켰다.자동생성을 할시에 중요한 것은 중복되는 숫자가 생성되면 안되는 것이다. 이것은 숫자가 생성 될 때마다. 반복문과 조건문을 이용하여 검사를 해주고 겹치지 않을때까지 생성을 계속 시켜준다. 숫자가 생성이 된후 구입 버튼을 누르면 dbLotto의 Lotto 테이블에 데이터를 저장한다. 구입은 한번에 5매 까지로제한을 하고 이것을 구현하는 알고리즘은 밑에 그림과 같이 간단히 나타낼수 있다.
frmChildChoose
이 폼에서는 구입한 로또의 당첨여부를 확인할수 있는 번호를 생성해준다. 여기서는 6개의 1등 번호와 한 개의 보너스 번호를 생성해준다.번호 생성은 구입할 때 자동번호 생성과 같은 알고리즘을 사용한다. Rnd 함수를 이용하여 45까지의 정수중에서 하나를 선택하는 식으로 결정한다. 중복되는 숫자는 조건문과 반복문을 이용하여 걸러낸다.생성된 숫자는 dbResult의 Result 테이블에 저장을한다.
frmChildShowResult
이 폼에서는 Lotto database 안에 저장되있는 내가 선택한 번호들과 Result database에 저장되있는 추첨 번호를 비교하여 등수를 매긴다.
Dim iMyLotto(5, 6) As Integer '구입한 로또 번호를 디비로 부터 불러오기 위한 변수
Dim iMyResult(7) As Integer '추첨 결과 번호를 디비로 부터 불러오기 위한 변수
당첨확인 버튼을 누르면 각각의 디비에서 결과들을 가지고 와서 위의 변수들에 저장을 하고 해당레이블에 출력을 해준다. 그후에 변수에 저장된 결과들을 가지고 추첨번호와 내가 선택한 번호를 비교해가면서 몇 개가 일치하는지를 카운트 한다.
Dim Checker As Integer
위의 변수는 일치하는 번호가 있을때마다 1씩 더해진다. 여기서 다른 등수들은 상관이 없지만 2등인 경우는 보너스 번호를 확인해야하는 문제가 있다. 그래서 Checker = 5 일때만 따로 조건문을 만들어서 다시 그안에 반복문을 통해서 보너스 번호와 일치하는 값이 있는지를 확인한다. 이것을 간단히 플로우 차트를 이용해서 표현하면 아래와 같다.
자료평가
-
아직 평가한 내용이 없습니다.