#include<iostream> #include<fstream> #include<vector> #include<string> #define MAXS 500 //최대 받을 수 있는 학생의 수 #define MAXM 10 //최대 달의 수 #define MAXL 20 //달의 최대 강의의 수 #define MAX 3 //0 = 학생번호, 1 = 달, 2 = 강의번호 using namespace std;
class Attend{ public: Attend(){ for(i=0;i<MAXS;i++){ for(j=0;j<MAX;j++){ Student[i][j] = 0; } } for(i=0;i<MAXM;i++){ for(j=0;j<MAXL;j++){ OutNumber[i][j] = 0; } } InStudent = 0; OutTemp = 0; } void InputFile(); //외부에서 파일을 입력 받아오고, 그 자료를 출력해서 낸다. void StudentCount(int StuNumber,int Month, int LectureNumber); //받을 학생들을 저장하고 배열한다. void Count(); //달,강의번호에 해당하는 만큼 인원수를 카운트 한다. void Compair(); //가장 많이 결석한 달,강의번호를 찾아낸다. private: int Student[MAXS][MAX]; int OutNumber[MAXM][MAXL]; int InStudent; int OutTemp; int i; int j; };
for(i=0;i!=InStudent;i++){ file1>>str1>>str2>>str3; //입력 받은 파일에서 자료값드을 받는다. SN = stoi(str1); //int형으로 변경 M = stoi(str2); //int형으로 변경 LN = stoi(str3); //int형으로 변경 StudentCount(SN,M,LN); //받은 학생의 명단으로 부터 학생 수를 달, 수업 등으로 카운트한다. } Count(); Compair();