홍익대 Java/과제
학생 3명 객체 생성후 . 과목 3개 값 대입 하고 평균 구해주고 석차 순위대로 출력(야매.. 정식 은 조만간 올리겠음) 덤으로 버그도 있다 . 토탈이 같을경우는 문제가 발생한다 ㅎ 고치기 귀찮아서 그냥 했을뿐
Yi Junho
2009. 7. 21. 22:35
반응형
import java.util.*;
import java.io.*;
class Student
{
private String name;
private int major []=new int [3];
private int sum;
private double avg=0;
public void setName(){
Scanner scan=new Scanner(System.in);
System.out.println("학생의 이름을 입력해주세요");
this.name =scan.next();
}
public void setMajor(){
for(int i=0;i<3;i++)
{
i++;
System.out.println(this.name+"의 학생의"+i+"번째 과목의점수를 입력해주세요");
Scanner scan1=new Scanner(System.in);
i--;
this.major [i]=scan1.nextInt();
}
}
public void sum(){
for(int i=0;i<3;i++)
{
this.sum+=this.major[i];
}
}
public void avg(){
avg=(double)this.sum/3;
}
public int getSum(){
return sum;
}
public void printDB(){
System.out.println(this.name +" 과목 1 "+this.major[0]+" 과목 2 "+this.major[1]+" 과목 3 "+this.major[2]+" 평균 "+this.avg);
}
}
class Exam
{
public static void main(String[] args) throws Exception
{
Student [] jh =new Student [3];
int lanking []=new int [3];
for (int i=0;i<3 ;i++ )
{
jh[i]=new Student();
jh[i].setName();
jh[i].setMajor();
jh[i].sum();
jh[i].avg();
lanking [i]=jh[i].getSum();
}
Arrays.sort(lanking);// 야매버전
for(int i=0;i<3;i++)
{
int temp=lanking[0];
lanking[0]=lanking[2];
lanking[2]=temp;
}
for(int i=0;i<3;i++)
{
for(int j=0;j<3;j++)
{
if (lanking[i]==jh[j].getSum())
{
System.out.printf("%d위 ",i+1);
jh[j].printDB();
}
}
}
}
}
반응형