[JAVA/자바] 버블정렬 알고리즘을 이용한 로또 게임(Lotto Game) 예제
import java.util.Scanner;
public class LottoGame {
final static int size = 6;
static Scanner sc;
public static void main(String[] args) {
int insertNum[] = new int[size];
int lotto[] = new int[size];
boolean resultSort = false;
int compareNum = 0;
lotto lg = new lotto();
do{
int cnt = 0;
while(cnt < 6) {
System.out.println((cnt+1)+"번 째 수 입력(1-45) : ");
sc = new Scanner(System.in);
insertNum[cnt] = sc.nextInt();
if(insertNum[cnt]<1 || insertNum[cnt]>45) {
System.out.println("1부터 45까지만 입력해주세요.");
cnt--;
}
cnt++;
}
resultSort = lg.sort(insertNum);
cnt = 0;
if(resultSort==true){
System.out.println("중복된 값 입력! 처음부터 다시 입력");
}
}while(resultSort);
do{
resultSort = false;
for(int i=0; i<lotto.length; i++)
lotto[i] = (int)(Math.random()*45)+1;
resultSort = lg.sort(lotto);
}while(resultSort);
compareNum = lg.compare(lotto, insertNum);
System.out.println("\n 맞은 개수 = " + compareNum);
}
}
class lotto {
int compare(int arr[], int inarr[]){
int count = 0;
for(int i=0; i<arr.length; i++) {
for(int j=0; j<inarr.length; j++) {
if(arr[i] == inarr[j])
count++;
}
}return count;
}
public static boolean sort(int arr[]) {
int temp=0;
for(int i=0; i<arr.length-1; i++) {
for(int j=i+1; j<arr.length; j++){
if(arr[i] > arr[j]) {
temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
for(int m=0; m<arr.length; m++) {
if(i!=m && arr[i]==arr[m])
return true;
}
}
}
return false;
}
}