class Grade
{
public:
Grade();
void inputGrade();
void displayGrade();
private:
unsigned int GradeCount1;
unsigned int GradeCount2;
unsigned int GradeCount3;
unsigned int GradeCount4;
unsigned int student;
};
================================
#include <iostream>
#include <iomanip>
#include "header.h"
using namespace std;
Grade::Grade()
{
GradeCount1 = 0 ; GradeCount2 = 0 ; GradeCount3 = 0; GradeCount4 = 0;
}
void Grade::inputGrade(){
int Grade=0;
cout << "점수를 입력하세요 <입력 종료는 -1> : ";
cin >> Grade;
while (Grade != -1){
cout << "점수를 입력하세요 <입력 종료는 -1> : ";
cin >> Grade;
switch(Grade/10){
case 10:
GradeCount1++;
student++;
break;
case 9:
GradeCount2++;
student++;
break;
case 8:
GradeCount3++;
student++;
break;
case 7:
case 6:
case 5:
case 4:
case 3:
case 2:
case 1:
case 0:
GradeCount4++;
student++;
break;
default:
cout << "잘못된 입력입니다. 다시 ";
break;
}
}
}
void Grade::displayGrade(){
cout << "\n<객체지향 프로그래밍 중간 퀴즈 성적 IN104-002>" <<endl;
cout << setw(9) << "100: " << GradeCount1 <<endl;
cout << setw(7) << "90 - 99: " << GradeCount2 <<endl;
cout << setw(7) << "80 - 89: " << GradeCount3 <<endl;
cout << setw(9) << "Fail: " << GradeCount4 <<endl;
cout << "총원: "<<student;
cout << " 합격자 총원: "<<GradeCount1+GradeCount2+GradeCount3<<endl;
double Average=0;
Average=(GradeCount1+GradeCount2+GradeCount3)/student;
cout << fixed <<setprecision(2);
cout << "합격자 평균: "<<Average<<endl;
double AllAverage=0;
AllAverage=(GradeCount1+GradeCount2+GradeCount3+GradeCount4)/student;
cout << "전체 평균: "<<AllAverage<<endl;
}
===========================================================================================
#include <iostream>
#include "header.h"
using namespace std;
int main(){
Grade myGrade;
myGrade.inputGrade();
myGrade.displayGrade();
}
진짜 다 해서 디버깅하고 실행하니 쓰레기값이 뜹니다.... 좀 고칠 부분 지적해주세요..
그리고 아까 말하신대로 grade/10을 스위치 안에 넣었는데 예외가 있네요.
이거 100이상 입력하면 default가 호출되야 하는데 101~109까지 적으면 어차피 /10 하면 정수형이라 10이 나와버려서 다 처리되니...이거 모르겠네요.
고수님들 좀 가르쳐주십쇼
예외가 있다면 if 를 쓰면 될 것을.
스위치전에 if문넣어서 예외값처리하든가 가르쳐주십쇼가아니잔아이건 걍생각을안하는구만
왜 쓰레기값이뜨는지는 클래스를 왜정의하고 private랑 public을 왜나누는지 접근방법이뭔지를 생각해보셈 졸려서걍대충봣는데 내생각이맞을거다