//6개의 로또 번호 생성
int[]lotto=new int[6];
//임의의 수를 로또변수에 발생시켜서 넣어준다
for(int i=0;i<lotto.length;i++)
{
//1~45까지의 랜덤수 발생
lotto[i]=(int)(Math.random()*45)+1;
//중복체크
for(int j=0;j<i;j++) //범위가 j<i
{
//만약 숫자가 중복이 되면
if(lotto[i]==lotto[j])
{
i--; //같은 번지에 다시 값을 구하기 위해서
break; //i++로 다시 돌아가게 됨
}
}
}
//오름차순 정렬
for(int i=0;i<lotto.length-1;i++)
{
for(int j=i+1;j<lotto.length;j++)
{
if(lotto[i]>lotto[j])
{
int tmp=lotto[i];
lotto[i]=lotto[j];
lotto[j]=tmp;
}
}
}
//오름차순 다른 방법
//Arrays.sort(lotto);
//출력
for(int i=0;i<lotto.length;i++)
{
System.out.print(lotto[i]+" "); //또는 System.out.printf(lotto[i]);
}
System.out.println();
//결과
1 12 13 22 33 41
~~~~~~~~~~~~~~~~~~~~
(예제)
//로또구매금액에 따른 출력
//로또 1회 비용 1000원
//로또 구매 금액?
//5000원
//1회: 1,3,5,48,26,44
//2회:
//5회:
int[]lotto=new int[6];
int price=0;
Scanner sc=new Scanner(System.in);
System.out.println("로또 구매 금액?");
price=sc.nextInt();
if(price<1000)
{
System.out.println("금액 부족");
return;
}
for(int n=0;n<price/1000;n++) //횟수
{
System.out.printf("%3d회: ",n+1);
//임의의 수를 로또 변수에 발생
for(int i=0;i<lotto.length;i++)
{
lotto[i]=(int)(Math.random()*45)+1;
//중복처리
for(int j=0;j<i;j++)
{
if(lotto[i]==lotto[j])
{
i--;
break;
}
}
}
//오름차순 정렬
for(int i=0;i<lotto.length-1;i++)
{
for(int j=i+1;j<lotto.length;j++)
{
if(lotto[i]>lotto[j])
{
int tmp=lotto[i];
lotto[i]=lotto[j];
lotto[j]=tmp;
}
}
}
//출력
for(int i=0;i<lotto.length;i++)
{
System.out.printf("%5d",lotto[i]);
}
System.out.println();
}
//결과
로또 구매 금액?
5000
1회: 4 6 25 31 37 44
2회: 1 3 10 11 18 44
3회: 9 10 15 17 28 44
4회: 2 5 8 15 34 44
5회: 2 4 32 36 42 45
'JAVA' 카테고리의 다른 글
210810_2차원배열+빙고 (0) | 2021.08.10 |
---|---|
210810_2차원 배열 (0) | 2021.08.10 |
210810_배열+띠구하기 (0) | 2021.08.10 |
210810_tmp(빈그릇)+순서변경+오름차순 (0) | 2021.08.10 |
210810_배열+등수 (0) | 2021.08.10 |