영상
문제
package 반복문5_문제;
/*
[문제]
1. 10회 반복을 한다.
2. 1~100 사이의 랜덤 숫자를 저장한다. (학생의 성적)
3. 성적이 60점 이상이면 합격생이다.
-------------------------------------------
1. 전교생(10명)의 총점과 평균을 출력한다.
2. 합격자 수를 출력한다.
3. 1등 학생의 번호와 성적을 출력한다.
단, 동점자는 고려하지 않는다.
[예시]
[1] 18 : 불합격
[2] 31 : 불합격
[3] 25 : 불합격
[4] 61 : 합격
[5] 14 : 불합격
[6] 46 : 불합격
[7] 83 : 합격
[8] 100 : 합격
[9] 44 : 불합격
[10] 65 : 합격
총점 = 487점
평균 = 48.70점
합격생 수 = 4명
1등 학생 = 100점 ( 8 )
*/
public class 반복문5_문제02_랜덤점수통계_문제 {
public static void main(String[] args) {
}
}
Java
복사
해설
package 반복문5_문제;
import java.util.Random;
/*
[문제]
1. 10회 반복을 한다.
2. 1~100 사이의 랜덤 숫자를 저장한다. (학생의 성적)
3. 성적이 60점 이상이면 합격생이다.
-------------------------------------------
1. 전교생(10명)의 총점과 평균을 출력한다.
2. 합격자 수를 출력한다.
3. 1등 학생의 번호와 성적을 출력한다.
단, 동점자는 고려하지 않는다.
[예시]
[1] 18 : 불합격
[2] 31 : 불합격
[3] 25 : 불합격
[4] 61 : 합격
[5] 14 : 불합격
[6] 46 : 불합격
[7] 83 : 합격
[8] 100 : 합격
[9] 44 : 불합격
[10] 65 : 합격
총점 = 487점
평균 = 48.70점
합격생 수 = 4명
1등 학생 = 100점 ( 8 )
*/
public class 반복문5_문제02_랜덤점수통계_정답 {
public static void main(String[] args) {
Random ran = new Random();
int total = 0;
int count = 0;
int maxScore = 0;
int maxIndex = 0;
for(int i=1; i<=10; i++) {
int score = ran.nextInt(100) + 1;
System.out.printf("[%d] %d : " , i, score);
total += score;
if(score >= 60) {
System.out.println("합격");
count += 1;
} else {
System.out.println("불합격");
}
if(maxScore < score) {
maxScore = score;
maxIndex = i;
}
}
double avg = total / 10.0;
System.out.printf("총점 = %d점\n", total);
System.out.printf("평균 = %.2f점\n", avg);
System.out.printf("합격생 수 = %d명\n", count);
System.out.printf("1등 학생 = %d점 ( %d )", maxScore, maxIndex);
}
}
Java
복사