Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
Tags
- 자바설치
- DA#
- 자바객체
- 객체
- Servlet
- SQL
- 오라클
- OOP
- 서블릿
- 자바기초
- 자바문제
- 서블릿 동작방식
- 설치방법
- 서블릿 파라미터
- 자바 암호화
- 서블릿 예제
- 서블릿 값 가져오기
- 자바공부
- 스트림
- 입출력
- 컨텍스트 초기화 객체
- 숫자야구
- 스택
- java
- 자바I/O
- File
- 조건문
- 자바
- 테이블 설계
- 예제
Archives
- Today
- Total
다양한 관심 :)
로또 프로그램 본문
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashSet;
import java.util.List;
public class LottoProgram {
/*
* 문제) 로또를 구매하는 프로그램 작성하기
*
* 사용자는 로또를 구매할 때 구매할 금액을 입력하고 입력한 금액에 맞게 로또번호를 출력한다. (단, 로또 한장의 금액은 1000원이며 최대
* 100장까지만 구입할 수 있고, 거스름돈도 계산하여 출력한다.)
*/
int money = 0;
List<Integer> Lotto = new ArrayList<>();
public static void main(String[] args) {
main();
}
private static void main() {
LottoProgram lotto = new LottoProgram();
while (true) {
System.out.println("\n==============================\n");
System.out.println("\tLotto 프로그램");
System.out.println("\n----------------------------\n");
System.out.println("\t1.Lotto 구입");
System.out.println("\t2.프로그램 종료");
System.out.println("\n===============================\n");
System.out.println("번호 입력>");
int input = ScanUtill.nextInt();
switch (input) {
case 1:
lotto.start();
break;
case 2:
System.out.println("프로그램을 종료합니다.");
System.exit(0);
default:
System.out.println("잘못 누르셨습니다. 다시입력해주세요.");
break;
}
}
}
private void start() {
System.out.println("\t로또 구입 ");
System.out.println();
System.out.println("로또 한개당 1000원 입니다.");
System.out.print("금액을 입력해주세요>");
money = ScanUtill.nextInt();
if (money < 1000) {
System.out.println();
System.out.println("입력금액이 너무 적습니다.");
System.out.println("로또 구입 실패!!!!!");
main();
} else if (money > 100000) {
System.out.println();
System.out.println("입력금액이 너무 많습니다.");
System.out.println("로또 구입 실패!!!!!");
main();
} else
buy();
}
private void buy() {
int change = money % 1000;
HashSet<Integer> num = new HashSet<>();
// int buyLotto = 3000 / 1000;
int buyLotto = money / 1000;
for (int i = 0; i < buyLotto; i++) {
num = new HashSet<>();
// Lotto.clear();
while (num.size() < 6) {
num.add((int) (Math.random() * 45) + 1);
}
// System.out.println(num);
Lotto = new ArrayList<>(num);
Collections.sort(Lotto);
System.out.print("\n" + (i + 1) + "번째 로또번호 : ");
for (int a : Lotto) {
System.out.print(a + " ");
}
}
System.out.println();
System.out.println("구매 완료!!!!");
System.out.println("받은 금액은 : " + money +" 원,"+ "거스름돈은 : " + change + " 원 입니다.");
}
}
'프로그래밍 공부 > JAVA예제' 카테고리의 다른 글
JAVA - FILE (0) | 2020.11.02 |
---|---|
숫자 야구 프로그램 (0) | 2020.10.26 |
RESTAURANT (0) | 2020.10.12 |
BANK (0) | 2020.10.12 |
생성자 실행 (0) | 2020.10.12 |