day19.quiz => Practice5 문제 내가 만든 코드!!
=>
continue를 만나면 그 뒤에 어떤 구문이 있든간에 실행하지 않고 pass
가장 가까운 반복문으로 올라가는 것을 의미함
=>
switch문 내부에 존재하는 break는 해당 switch문을 빠져나가는 용도일 뿐이다!!!!
=>
continue를 만나면 그 뒤에 어떤 구문이 있든간에 실행하지 않고 pass
가장 가까운 반복문으로 올라가는 것을 의미함
=>
break문을 만나는 순간 "가장 가까운 반복문"을 빠져나간다
continue, break는 반복문과 연관되어있다고 생각하면 돼!
switch문이 껴있을때 break일때 switch문만 빠져나간다
while문 안에 switch문
continue : while 반복문 다음단계로
★break : switch문만 빠져나간다!★
while문 안에 if문
continue : while 반복문 다음단계로
break : while 반복문 빠져나간다!
로또 번호 6개 랜덤하게 생성하기.
최종 6개의 번호는 6칸의 배열에 저장되어야 한다.
로또 번호는 동일한 번호가 중복되어 들어갈 수 없다.
1) Math.random() 활용
2) int[] lotto = new int[6]; 활용
int[] lotto = new int[6]; //먼저 로또번호6개 세팅
for (int i=0; i<lotto.length; i++) {
lotto[i] = (int)(Math.random()*45) + 1;
// 6개 자리에 1~45까지 수 들어가게 세팅
for (int j=0; j<i; j++) { // 중복체크!
if (lotto[i] == lotto[j]) { //중복
i--; // 중복된 수가 나온 인덱스 자리에
//다시 다른 수가 들어가야 하니까 i를 -1해주고
//break로 j반복문을 빠져나가면 i가 다시 +1이 될거고
//그게 중복된 수가 나온 인덱스 자리가 된다~!
break; //j반복문 나가
}
}
}//밖으로 나온 시점 6개가 다뽑혀있을것
for (int num : lotto) {
System.out.print(num + " ");
}
=>출력
1 32 43 22 12 6
이런식으로 1~45 수가 중복없이 6개 나올것이다!
우리 학원은 3개의 반이 있으며, 한 반에 5명씩 공부하고 있다.
반 순서별로 5명의 점수를 입력받아서 저장해서 관리하도록 하며,
각 반별 점수의 평균과 전체의 평균을 출력할 수 있도록 코드를 작성하시오.
ex)
1반 : 10 10 10 10 10
2반 : 20 20 20 20 20
3반 : 30 30 30 30 30
1반 평균 : 10
2반 평균 : 20
3반 평균 : 30
전체 평균 : 20
Scanner scan = new Scanner(System.in);
//3개의 반 5명씩
int[][] arr = new int[3][5];
//입력받기
for (int i=0; i<arr.length; i++) { //행:3
System.out.print((i+1) + "반 : "); //한 반씩 행 시작할때마다 나와야하니까 행 끝나는 시점마다 나오게 해야한당!
for(int j=0; j<arr[i].length; j++) { //열:5
arr[i][j] = scan.nextInt();
}
}
//한 반 평균, 총 평균
//한 반 평균 = 한 반 총합 / 5
//총 평균 = 전체 총합 / 15
int totalArr = 0;
int totalArrSum = 0;
for (int i=0; i<arr.length; i++) {
totalArr = 0; // 반마다 총합을 해야하니까! j한바퀴돌때마다 0으로 세팅해준다
for (int j=0; j<arr[i].length; j++) {
totalArr = totalArr + arr[i][j];
totalArrSum = totalArrSum + arr[i][j];
}
System.out.println((i+1) + "반 평균 : " + totalArr/arr[i].length);
}
System.out.println("전체 평균 : " + totalArrSum/(arr.length*arr[0].length) );
// arr.length (3) * arr[0].length(5) = 15