/*
* 성적처리프로그램
* 입력 : 이름, 국, 영, 수
* 연산 : 총점, 평균
* 출력 : 이름, 국, 영, 수, 총, 평
*/
import java.util.Scanner;
public class arrayExam01 {
private String name;
private int []score; //= new int[4];//국 영 수 총
private float avg;
public arrayExam01() {
name = "";
score = new int[4];
avg = 1.f;
}
public void setName(String name) {
this.name = name;
}
public void setScore(int kor, int eng, int math) {
score[0] = kor;
score[1] = eng;
score[2] = math;
// score[3] = tot;
}
public void setAvg(float data) {
avg = data;
}
public String getName() {
return name;
}
public int[] getScore() {
return score;
}
public float getAvg() {
return avg = score[3]/3.0f;
}
public int getTotal() { //총점
for(int i=0;i<score.length-1;i++) {
score[3] += score[i];
}
return score[3];
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in); // 객체선언
arrayExam01 ae = new arrayExam01();
System.out.print("이름 입력 : ");
ae.setName(sc.next());
System.out.print("성적 입력(국 영 수) : ");
int a=sc.nextInt();
int b=sc.nextInt();
int c=sc.nextInt();
ae.setScore(a,b,c);
ae.getScore()[3] = ae.getTotal();
// 출력
System.out.println(ae.getName());
for(int i=0;i<ae.getScore().length;i++) {
System.out.println(ae.getScore()[i]);
}
// System.out.println(ae.getTotal());
System.out.println(ae.getAvg());
}
}
--- 강사님 코드
public class teacherClass {
// field
private String name; //이름
private int kor;
private int eng;
private int mat;
private int total;
// private int [] score;
private float avg;
// constructor
public teacherClass() {
}
public teacherClass(String n, int k, int e, int m) {
name = n;
kor = k;
eng = e;
mat = m;
total = kor+eng+mat;
avg= total/3.f;
}
// method
// setter
public void setName(String n) {
name = n;
}
public void setKor(int k) {
kor = k;
}
public void setEng(int e) {
eng = e;
}
public void setMat(int m) {
mat = m;
}
// getter
public String getName() {
return name;
}
public int getKor() {
return kor;
}
public int getEng() {
return eng;
}
public int getMat() {
return mat;
}
public int getTotal() {
return total = kor+eng+mat;
}
public float getAvg() {
return avg = getTotal()/3.f;
}
public static void main(String[] args) {
teacherClass tc = new teacherClass();
tc.setName("pej");
tc.setKor(10);
tc.setEng(20);
tc.setMat(30);
System.out.println(tc.getName());
System.out.println(tc.getKor());
System.out.println(tc.getEng());
System.out.println(tc.getMat());
System.out.println(tc.getTotal());
System.out.println(tc.getAvg());
}
}
--- 복습 코드
/*
* 성적처리프로그램
* 입력 : 이름, 국, 영, 수
* 연산 : 총점, 평균
* 출력 : 이름, 국, 영, 수, 총, 평
*/
import java.util.Scanner;
public class ArrayNew {
private String name;
private int []score; //= new int[4];//국 영 수 총
private float avg;
public ArrayNew() {
name = "";
score = new int[4];
avg = 1.f;
}
public void setName(String name) {
this.name = name;
}
public void setScore(int i, int score) {
this.score[i] = score;
}
public void setAvg(float data) {
avg = data;
}
public void seTotal(int score) { // 총점
// 출력할때 getScore에서 마지막 인덱스를 쓰기 위함임.
this.score[3] += score;
}
public String getName() {
return name;
}
public int[] getScore() {
return score;
}
public float getAvg() {
return avg = score[3]/3.0f;
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in); // 객체선언
ArrayNew ae = new ArrayNew();
System.out.print("이름 입력 : ");
ae.setName(sc.next());
for(int i=0;i<ae.getScore().length-1;i++) {
System.out.print("성적 입력(국 영 수) : ");
ae.setScore(i,sc.nextInt());
ae.seTotal(ae.getScore()[i]);
}
// 출력
System.out.println(ae.getName());
for(int i=0;i<ae.getScore().length;i++) {
System.out.println(ae.getScore()[i]);
}
//System.out.println(ae.getTotal());
System.out.println(ae.getAvg());
}
}
반응형
'자바과정 > Java' 카테고리의 다른 글
Java 실습(성적처리프로그램:클래스) - 5일차 (0) | 2021.02.03 |
---|---|
Java 기초 - 5일차 (0) | 2021.02.03 |
Java 실습(사칙연산계산기:메소드, 생성자) - 4일차 (0) | 2021.02.02 |
Java 기초 - 4일차 (0) | 2021.02.02 |
Java 실습(성적처리프로그램:함수2) - 3일차 (0) | 2021.02.02 |
댓글