본문 바로가기
JAVA

시험 점수를 입력받아 총점, 평균 구하기

by hhana 2022. 10. 7.

학생 번호를 입력하면 학생 이름이 나오고
국어, 영어, 수학 점수를 입력하면 총점과 평균을 구해주는 프로그램을 작성해보았습니다
(학생 번호에 해당하는 학생이 없다면 안내문이 나오고 메서드는 종료됩니다)

하나의 페이지에 모든 걸 구성할 수도 있지만 좀 더 정리된 메인 메서드를 위해
관련 변수와 메서드를 저장하는 클래스를 따로 만들어주었습니다

package day1006.Exam;

import java.util.Scanner;

public class ExamResult {
	
	public static void main(String[] args) throws Exception {
		
		System.out.print("학생 번호를 입력하세요 : ");
		Scanner sc = new Scanner(System.in);
		AboutExam ae = new AboutExam();
		ae.num=sc.nextInt();
		String name=ae.name(ae.num);
		if(name!="null") {
			System.out.println("아 "+ae.num+"번 "+name+"학생이군요!");
		} else {
			System.out.println("아 "+ae.num+"번 존재하지 않는 학생이군요!");
			return;
		}
		
		System.out.print("국어 점수를 입력하세요 : ");
		ae.kor=sc.nextInt();
		System.out.print("영어 점수를 입력하세요 : ");
		ae.eng=sc.nextInt();
		System.out.print("수학 점수를 입력하세요 : ");
		ae.mat=sc.nextInt();
		System.out.println("자 그럼 총점과 평균을 알려드리도록 할게요");
		sc.close();
		
		int i=0;
		while(i<3) {
			System.out.println(".");
			i++;
			Thread.sleep(500);
		}
		
		System.out.printf("총점은 %d점, 평균은 %.2f점이네요",ae.tot(),ae.avg(ae.tot));
		
	}

}


- 반환값이 없는 void 메소드에서도 reutrn 문을 사용하면 바로 해당 메소드 스택을 빠져나갈 수 있습니다
- %.2f : 평균은 double값으로 반환되며 소수점 둘째자리까지 표현됩니다

 

package day1006.Exam;

public class AboutExam {
	
	int kor;
	int eng;
	int mat;
	int num;
	int tot;
	double avg;
	
	String name(int num) {
		String name=null;
		switch(num) {
		case 1 : name="김하나"; break;
		case 2 : name="김두나"; break;
		case 3 : name="김세나"; break;
		case 4 : name="김사나"; break;
		case 5 : name="김다나"; break;
		default : name="null";
		
		
		}
		return name;
	}
	
	int tot() {
		tot=kor+eng+mat;
		return tot;
	}

	public double avg(int total) {
		avg=(double)total/3;
		return avg;
	}
	

}

 

🐥병아리 개발자는 뿌듯합니다

댓글