사용자는 로또를 구매할 때 구매할 금액을 입력하고 입력한 금액에 맞게 로또번호를 출력한다.
(단, 로또 한 장의 금액은 1000원이고 거스름돈도 계산하여 출력한다.)
==========================
Lotto 프로그램
--------------------------
1. Lotto 구입
2. 프로그램 종료
==========================
메뉴선택 : 1 <-- 입력
Lotto 구입 시작
(1000원에 로또번호 하나입니다.)
금액 입력 : 2500 <-- 입력
행운의 로또번호는 아래와 같습니다.
로또번호 1 : 2,3,4,5,6,7
로또번호 2 : 20,21,22,23,24,25
받은 금액은 2500원이고 거스름돈은 500원입니다.
==========================
Lotto 프로그램
--------------------------
1. Lotto 구입
2. 프로그램 종료
==========================
메뉴선택 : 2 <-- 입력
감사합니다
1차 코드
package kr.basic;
import java.util.Arrays;
import java.util.Random;
import java.util.Scanner;
public class LottoProgram {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int money = 1000;
Random random = new Random();
do {
System.out.println("==========================");
System.out.println("Lotto 프로그램");
System.out.println("==========================");
System.out.println("1. Lotto 구입 \n2. 프로그램 종료");
int selectNum = scanner.nextInt();
scanner.nextLine();
if(selectNum ==1){
System.out.println("Lotto 구입 시작 \n(1000원에 로또번호 하나입니다.)");
System.out.print("금액 입력 : ");
int inputMoney = scanner.nextInt();
scanner.nextLine();
int count = inputMoney/money;
int change = inputMoney % money;
for (int i = 0; i < count; i++) {
// 여기서 로또 번호 출력해야함
System.out.println("로또 번호" + (i + 1) + " : " + randomValue() );
}
System.out.println("받은 금액은 " + inputMoney + "원이고 거스름돈은 " + change + "원입니다.");
}else if(selectNum ==2){
System.out.println("감사합니다");
return;
}else{
System.out.println("잘못된 번호 입력으로 로또번호 랜덤추출이 종료됩니다.");
return;
}
}while (true);
}
public static String randomValue(){
Random random = new Random();
int[] randoms = new int[6];
String result ="";
for (int i = 0; i < 6; i++) {
int randomValue = random.nextInt(45) + 1;
randoms[i] = randomValue;
result += randomValue;
if(i<5) result += ", ";
}
return result;
};
}
일단 성공! 근데 로또번호는 같은 나오면 안 되는데.. 예외처리를 어떻게 해줘야 할지.. 감을 못 잡고 있다....
추가로 작업하면 아래에 작성해 놓을 예정!
'JAVA > 문제 풀어보기' 카테고리의 다른 글
[문제]다형성 활용 (1) | 2025.07.13 |
---|---|
[문제] 계산기 프로그램 (4) | 2025.07.13 |
[문제] 가위바위보게임 (3) | 2025.07.12 |