JAVA 배열, 성적표 예제

*** 검색어: nabiro, java, 배열, 성적표

[출처] (주)프리렉, 열혈강의 JAVA Programming, 김승현 저

// 2차원 배열 예제, 석차 추가한 성적표 예제
import java.io.*;

public class P228 {
	public static void main(String[] ar) throws IOException{
		BufferedReader in = new BufferedReader(
				new InputStreamReader(System.in));
		String[] subname = {"국어", "영어", "수학"};
		int[][] sub = new int[3][subname.length + 1];
			// 1번째 배열=> 0:첫번째 사람, 1:두 번째 사람, 2:세 번째 사람
			// 2번째 배열 => 0:국어 1:영어 2:수학 3:종합 4:석차
		float[] avg = new float[3];
		
		for(int k = 0; k < sub.length; k++){
			for(int i = 0; i < sub[k].length - 1; i++){
				do {
					System.out.print(subname[i] + " = ");
					sub[k][i] = Integer.parseInt(in.readLine());
				} while(sub[k][i] < 0 || sub[k][i] > 100);
				sub[k][sub[k].length - 2] += sub[k][i];
			}
			avg[k] = sub[k][sub[k].length -1] / (float)(sub[k].length -1);
			sub[k][sub[k].length - 1] = 1;
		}
		
		for(int k = 0; k < sub.length; k++){
			for(int i = 0; i < sub.length; i++){
				if(sub[k][sub[k].length - 2] < sub[i][sub[i].length - 2]){
					sub[k][sub[k].length - 1]++;
				}
			}
		}
		
		for(int k = 0; k < sub.length; k++){
			System.out.println();
			System.out.println("석차 = " + sub[k][sub[k].length -1] + "등");
			System.out.println("총점 = " + sub[k][sub[k].length -1]);
			System.out.println("평균 = " + avg[k]);
		}
	}
}



댓글

Designed by JB FACTORY