본문 바로가기
Language/JAVA

JAVA 11일차 - 실습 문제 01 수정

by 코젼 2022. 7. 5.
728x90
반응형

public class StudentTest {
	static final int MAX_NUM = 3;

	public static void main(String args[]) {
		// Student 객체를 3개 생성하여 배열에 넣는다
		Student studentArray[] = new Student[MAX_NUM];
		studentArray[0] = new Student("홍길동", 15, 170, 80);
		studentArray[1] = new Student("한사람", 13, 180, 70);
		studentArray[2] = new Student("임걱정", 16, 175, 65);

		double avg_age = 0.0;
		double avg_height = 0.0;
		double avg_weight = 0.0;

		String max_name = "", min_name = "";
		int max_age = 0, min_age = 0;
		int max_height = 0, min_height = 0;
		int max_weight = 0, min_weight = 0;

		System.out.println("name\t나이\t신장\t몸무게");
		// 배열에 있는 객체 정보를 studentInfo 메소드 사용 하여 출력
		for (int i = 0; i < studentArray.length; i++) {
			System.out.println(studentArray[i].studentInfo());

			// Student 객체들의 나이의 평균 구하기
			avg_age += studentArray[i].getAge();
			// Student 객체들의 신장의 평균 구하기
			avg_height += studentArray[i].getHeight();
			// Student 객체들의 몸무게의 평균 구하기
			avg_weight += studentArray[i].getWeight();
		}

		// Student 객체들의 나이의 평균 출력
		System.out.println("\n나이 평균 : " + (Math.round((avg_age / 3) * 1000)) / 1000.0);
		// Student 객체들의 신장의 평균 출력
		System.out.println("신장 평균 : " + (Math.round((avg_height / 3) * 1000)) / 1000.0);
		// Student 객체들의 몸무게의 평균 출력
		System.out.println("몸무게 평균 : " + (Math.round((avg_weight / 3) * 1000)) / 1000.0);

		// 학생들 중 나이가 가장 적은 학생과 많은 학생을 출력
		for (int i = 0; i < studentArray.length - 1; i++) {
			if (studentArray[i].getAge() < studentArray[i + 1].getAge()) {
				System.out.println("\n나이가 가장 많은 학생 : " + studentArray[i + 1].getName());
				System.out.println("나이가 가장 적은 학생 : " + studentArray[i].getName());
			}
		}

		// 학생들 중 신장이 가장 적은 학생과 큰 학생을 출력
		for (int i = 0; i < studentArray.length - 1; i++) {
			if (studentArray[i].getHeight() < studentArray[i + 1].getHeight()) {
				System.out.println("\n신장이 가장 긴 학생 : " + studentArray[i + 1].getName());
				System.out.println("신장이 가장 짧은 학생 : " + studentArray[i].getName());
			}
		}
		// 학생들 중 몸무게가 가장 적은 학생과 많이 나가는 학생 을 출력
		for (int i = 0; i < studentArray.length - 1; i++) {
			if (studentArray[i].getWeight() < studentArray[i + 1].getWeight()) {
				System.out.println("\n몸무게가 가장 많이 나가는 학생 : " + studentArray[i + 1].getName());
				System.out.println("몸무게가 가장 많이 나가는 학생 : " + studentArray[i].getName());
			}
		}
	}
}
728x90
반응형

'Language > JAVA' 카테고리의 다른 글

JAVA 12일차 - 열거형(Enumerated), 스레드  (0) 2022.07.05
JAVA 12일차 - 컬렉션, 제네릭  (0) 2022.07.05
JAVA 11일차 - 실습 문제 01  (0) 2022.07.04
JAVA 11일차 - cmd, 소스 분석  (0) 2022.07.04
JAVA 10일차 - 예외 처리  (0) 2022.07.01

댓글