자바)로또번호생성

leeeexxxx·2022년 5월 19일
1

java

목록 보기
9/10
post-thumbnail

💡계획

스캐너를 이용해 0~45사이의 숫자 6개를 입력받고
랜덤숫자 6개(0~45사이)를 출력해서
값을 비교해
당첨 결과를 확인한다.

✔️코드

package 문자열배열열거타입;

import java.util.Arrays;
import java.util.Scanner;

public class 로또 {
	public static void main(String[] args) {
		// 로또번호 6개 입력
		Scanner in = new Scanner(System.in);
		System.out.println("숫자 6개를 입력하세요");

		int[] mynum = new int[6];

		for (int i = 0; i < mynum.length; i++) {
			mynum[i] = in.nextInt();
			if (mynum[i] > 45 || mynum[i] < 0) {
				//mynum 숫자 범위제한 
				System.out.println("숫자를 다시 입력하세요!0~45사이의 숫자만 입력가능");
				i--;
			}
			for (int j = 0; j < i; j++) {
				if (mynum[i] == mynum[j]) {
					//중복숫자 제거 
					System.out.println("중복숫자를 입력하였습니다.");
					i--;
				}
			}

		}
		// 오름차순 정렬
		Arrays.sort(mynum);

		// 로또 번호 확인
		System.out.print("나의 번호 ");
		for (int i = 0; i < 6; i++) {
			System.out.print(mynum[i] + " ");
		}
		System.out.println();

		// 랜덤 로또 번호 생성
		int lotto[] = new int[6];

		for (int i = 0; i < 6; i++) {
			lotto[i] = (int) (Math.random() * 45) + 1;
			for (int j = 0; j < i; j++) {
				// 중복제거
				if (lotto[i] == lotto[j]) {
					i--;
					break;
					// 값이 중복이면 i를 한번더 돌리기
				}

			}

		}
		// 오름차순 정렬
		Arrays.sort(lotto);
		// 랜덤 로또 번호 확인
		System.out.print("복권 당첨 번호 ");
		for (int i = 0; i < 6; i++) {
			System.out.print(lotto[i] + " ");
		}
		System.out.println();

		int cont = 0;// 맞은 갯수
		for (int i = 0; i < 6; i++) {
			for (int j = 0; j < 6; j++) {
				if (mynum[i] == lotto[j]) {
					cont++;
				}
			}
		}

		switch (cont) {
		case 6: {
			System.out.println("1등 당첨입니다.");
		}
		case 5: {
			System.out.println("2등입니다.");
		}
		case 4: {
			System.out.println("3등입니다");
		}
		case 3: {
			System.out.println("4등입니다");
		}
		default: {
			System.out.println("꽝입니다");
		}

		}

		System.out.println("맞은 갯수:" + cont);

	}

}

✔️결과

✅✅✅✅ 개선할점

다음번에는 6개의 숫자(랜덤 1~45)를 한세트씩 묶어서 몇개를 출력할지 스캐너로 입력받고 (1~5개사이)
랜덤 로또 번호 1세트 (번호 6개 + 보너스 번호 )를 생성해
값을 비교해 총 결과를 입력 받아보고싶다.!...

0개의 댓글

관련 채용 정보