//객체지향 프로그래밍 5번
#include<iostream>
#include<iomanip>
using namespace std;
//자료입력 학번,국어,영어,수학 언제까지입력(0000)
//입력결과 학번=>국어=>영어=>수학=>총점=>평균=>평점
//종료
int main()
{
int i,j,k,tmp=0;
char student[20][3][10]; //[학생순서]0학번 1이름 2평점[입력 최대 크기]
float score[20][4]; //[학생순서]0국어 1영어 2수학 3평균
char key=3; //메뉴 선택 변수. (1,2,q,일경우 스위치문 수행후, key==3으로 변경.
// 그외의 숫자나 문자는 key==3으로 변경후 다시 수행.
// 3일경우 while반복문 수행.)
do
{
//////////////////////////////////////메뉴/////////////////////////////////////////////////////////////////
cout << "┏━━━━━━━━━━┓"<< endl;
cout << "┃1. 자료 입력 ┃"<< endl;
cout << "┃2. 입력 결과 ┃"<< endl;
cout << "┃q. 종료 ┃"<< endl;
cout << "┗━━━━━━━━━━┛"<< endl;;
///////////////////////////////////////////////////////////////////////////////////////////////////////////
cin >> key;
switch(key)
{
case '1' : for(i=0 ;i<20 ;i++)
{
for(j=0; j < 3 ; j++)
{ switch(j)
{ case 0 : cout <<"학번 9자리를 입력하세요.(입력 취소0)\n";
cout <<"학번 : "; cin >> student[i][j];
if(student[i][j][0] == '0')
{ cout <<"입력을 취소합니다.\n"; tmp=i; i=j=20; break;}
break;
case 1 : cout <<"이름을 입력하세요.(4자리 이내)\n";
cout <<"이름 : "; cin >> student[i][j];
default : break;
}
if(key=='2'){break;}
if(j == 2)
{ for(j=0; j < 4 ; j++)
{ switch(j)
{ case 0 : cout <<"국어 : "; cin>> score[i][j];
if(score[i][j]>100 || score[i][j] <0)
{cout<<"0~100의 점수를 입력하시오.\n"; j--;continue;}
break;
case 1 : cout <<"영어 : "; cin>> score[i][j];
if(score[i][j]>100 || score[i][j] <0)
{cout<<"0~100의 점수를 입력하시오.\n"; j--;continue;}
break;
case 2 : cout <<"수학 : "; cin>> score[i][j];
if(score[i][j]>100 || score[i][j] <0)
{cout<<"0~100의 점수를 입력하시오.\n"; j--;continue;}
break;
case 3 : score[i][j] = (score[i][0] + score[i][1] + score[i][2])/3;
default : break;
}
}
if(score[i][2] >= 90) {student[i][2][0]='A';}
else if(score[i][2] >= 80) {student[i][2][0]='B';}
else if(score[i][2] >= 70) {student[i][2][0]='C';}
else if(score[i][2] >= 60) {student[i][2][0]='D';}
else {student[i][2][0]='F';}
}
}
}
case '2' : for(i=0 ; i < tmp;i++)
{
cout<<i <<" ▶ 학번"<< student[i][0] <<" 이름 : " << student[i][1] <<endl;
cout<<" 국어 : "<< score[i][0]<<" 영어 : "<<score[i][1] <<" 수학 : "<<score[i][2]<<endl;
cout<<" 총점 : "<< score[i][3]*3<< " 평균 : "<<score[i][3]<<" 평점 : "<<student[i][2][0]<<endl;
}
key='3'; break;
case 'q' : return 0;break;
default : cout << "1,2,q 중 하나만 선택하세요.\n";break;
}
}while(key=='3');
return 0;
}