자바 스캐너 클라스 응용 - 국어, 영어, 수학 점수 입력 시 총점, 평균, 등급 출력하는 프로그램


/* 자바 스캐너 클라스 응용 */
/* 국어, 영어, 수학 점수 입력 시 총점, 평균, 등급 출력하는 프로그램 */
package pad;

import java.util.Scanner;

public class Pad {

	public static void main(String[] args) {
		new Byul();
	}
}

/* 메인 코딩 영역 */
class Byul {
	private Scanner sc;
	private Grade gr;

	Byul() {
		this.sc = new Scanner(System.in); // 스캐너 생성
		this.gr = new Grade(); // 점수 객체 생성
		this.main();
		this.sc.close(); // 스캐너 종료
	}

	// 핵심 코딩 영역
	private void main() {
		System.out.println("국어 점수 입력: ");
		gr.setKor(this.input());
		System.out.println("영어 점수 입력: ");
		gr.setEng(this.input());
		System.out.println("수학 점수 입력: ");
		gr.setMath(this.input());
		System.out.println("총점:\t" + (gr.getKor() + gr.getEng() + gr.getMath()));
		System.out.println("평균:\t" + (gr.getAvg()));
		System.out.println("등급:\t" + gr.getGrade());
	}

	// 입력 받는 함수
	private int input() {
		return sc.nextInt();
	}
}

/* 점수 저장용 클라스 */
class Grade {
	private int kor;
	private int eng;
	private int math;
	private double avg;

	public int getKor() {
		return kor;
	}

	public void setKor(int kor) {
		this.kor = kor;
	}

	public int getEng() {
		return eng;
	}

	public void setEng(int eng) {
		this.eng = eng;
	}

	public int getMath() {
		return math;
	}

	public void setMath(int math) {
		this.math = math;
	}

	public double getAvg() {
		this.avg = (double) Math.round((this.kor + this.eng + this.math) / 3.0 * 100) / 100;
		return this.avg;
	}

	public char getGrade() {
		if (this.avg >= 90) {
			return '수';
		} else if (this.avg >= 80) {
			return '우';
		} else if (this.avg >= 70) {
			return '미';
		} else if (this.avg >= 60) {
			return '양';
		} else {
			return '가';
		}
	}
}

댓글

이 블로그의 인기 게시물

substring 예제: 문자열을 입력 받아 한 글자씩 회전시켜 모두 출력하는 프로그램을 작성하라

단체 채팅 구현