Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- File
- 자바객체
- 컨텍스트 초기화 객체
- 서블릿 동작방식
- 스택
- 서블릿 값 가져오기
- 입출력
- Servlet
- 자바공부
- 자바설치
- 조건문
- OOP
- 예제
- DA#
- 객체
- 테이블 설계
- 숫자야구
- java
- 오라클
- 자바문제
- 서블릿 파라미터
- 서블릿 예제
- 자바I/O
- 설치방법
- 자바
- 스트림
- 서블릿
- 자바 암호화
- 자바기초
- SQL
Archives
- Today
- Total
다양한 관심 :)
배열문제 - 성적표 본문
우리반 모두의 국어, 영어, 수학, 사회, 과학, oracle, java점수를 0~100까지 랜덤으로 생성,
국 영 수 사 과 오라클 자바 (8과목) 의 과목합계 평균 합계, 평균, 석차 구하기
public static void main(String[] args) {
String[] name = new String[] { "학생1", "학생2", "학생3", "학생4", "학생5",
"학생6", "학생7", "학생8", "학생9", "학생10"};
String[] subjects = {"국어", "영어", "수학", "사회", "과학", "Oracle", "Java"};
int[][] score = new int[name.length][subjects.length];
int[] nameSum = new int[score.length];
float[] nameAvg = new float[score.length];
int[] subSum = new int[subjects.length];
float[] subAvg = new float[subjects.length];
int[] rank = new int[score.length];
for(int i = 0; i < score.length; i++){
for(int j = 0; j < score[i].length; j++){
score[i][j] = (int)(Math.random() * 101);
}
}
for(int i = 0; i < score.length; i++){
for(int j = 0; j < score[i].length; j++){
nameSum[i] += score[i][j];
}
}
for(int i = 0; i < score.length; i++){
nameAvg[i] = Math.round((float)nameSum[i] / subjects.length * 100) / 100f;
}
for(int i = 0; i < subjects.length; i++){
for(int j = 0; j < score.length; j++){
subSum[i] += score[j][i];
}
}
for(int i = 0; i < subjects.length; i++){
subAvg[i] = Math.round((float)subSum[i] / score.length * 100) / 100f;
}
for(int i = 0; i < score.length; i++){
rank[i] = 1;
for(int j = 0; j < score.length; j++){
if(nameSum[i] < nameSum[j]){
rank[i]++;
}
}
}
for(int i = 0; i < nameSum.length - 1; i++){
int min = i;
for(int j = i + 1; j < nameSum.length; j++){
if(nameSum[j] > nameSum[min]){
min = j;
}
}
//값을 정렬해주기
// int[] temp = score[i];
// score[i] = score[min];
// score[min] = temp;
//
// int temp2 = nameSum[i];
// nameSum[i] = nameSum[min];
// nameSum[min] = temp2;
//
// float temp3 = nameAvg[i];
// nameAvg[i] = nameAvg[min];
// nameAvg[min] = temp3;
//
// int temp4 = rank[i];
// rank[i] = rank[min];
// rank[min] = temp4;
//
// String temp5 = names[i];
// names[i] = names[min];
// names[min] = temp5;
}
for(int i = 0; i < subjects.length; i++){
System.out.print("\t" + subjects[i]);
}
System.out.println("\t합계\t평균\t석차");
for(int i = 0; i < score.length; i++){
System.out.print(name[i] + "\t");
for(int j = 0; j < score[i].length; j++){
System.out.print(score[i][j] + "\t");
}
System.out.println(nameSum[i] + "\t" + nameAvg[i] + "\t" + rank[i]);
}
System.out.print("과목합계");
for(int i = 0; i < subSum.length; i++){
System.out.print(subSum[i] + "\t");
}
System.out.println();
System.out.print("과목평균");
for(int i = 0; i < subAvg.length; i++){
System.out.print(subAvg[i] + "\t");
}
}
}
'프로그래밍 공부 > JAVA예제' 카테고리의 다른 글
생성자 실행 (0) | 2020.10.12 |
---|---|
OOP 예제 (0) | 2020.10.12 |
quiz 4. 나누어 떨어지는 숫자배열 (0) | 2020.10.12 |
quiz 3. 중복된 숫자 없애기 (0) | 2020.10.12 |
quiz 2 . 그래프그리기 (0) | 2020.10.12 |