Объектно-ориентированное программирование на C++. Андрианова А.А - 105 стр.

UptoLike

Объектно-ориентированное программирование на С++
// метод сдать зачет
void ContractStudent::SetTest(int numTest, double ball)
{
if (credit > 0)
throw 1;
Student::SetTest(numTest, ball);
}
// метод сдать экзамен
void ContractStudent::SetExam(int numExam, double ball)
{
if(!PassedTests())
throw 1;
Student::SetExam(numExam, ball);
}
// метод проверки допуска к экзаменационной сессии
bool ContractStudent::PassedTests()
{
if (credit > 0)
return false;
return Student::PassedTests();
}
// метод проверки, сдана ли сессия
bool ContractStudent::PassedExams()
{
if (credit > 0)
return false;
return Student::PassedExams();
}
// метод допуска к обучению в новой сессии
bool ContractStudent::NextSession()
{
if (!(PassedTests() && PassedExams()))
return false;
SetAverageMark();
for(int i = 0; i < countTests; i++)
tests[i] = 0.0;
for(int i = 0; i < countExams; i++)
exams[i] = 0.0;
// определение задолженности на следующий семестр
credit = payment;
return true;
}
// метод получения суммы оплаты обучения
105
                     Объектно-ориентированное программирование на С++
// метод сдать зачет
void ContractStudent::SetTest(int numTest, double ball)
{
     if (credit > 0)
          throw 1;
     Student::SetTest(numTest, ball);
}

// метод сдать экзамен
void ContractStudent::SetExam(int numExam, double ball)
{
     if(!PassedTests())
          throw 1;
     Student::SetExam(numExam, ball);
}

// метод проверки допуска к экзаменационной сессии
bool ContractStudent::PassedTests()
{
     if (credit > 0)
          return false;
     return Student::PassedTests();
}

// метод проверки, сдана ли сессия
bool ContractStudent::PassedExams()
{
     if (credit > 0)
          return false;
     return Student::PassedExams();
}

// метод допуска к обучению в новой сессии
bool ContractStudent::NextSession()
{
     if (!(PassedTests() && PassedExams()))
          return false;
     SetAverageMark();
     for(int i = 0; i < countTests; i++)
          tests[i] = 0.0;
     for(int i = 0; i < countExams; i++)
          exams[i] = 0.0;
     // определение задолженности на следующий семестр
     credit = payment;
     return true;
}

// метод получения суммы оплаты обучения

                                                                  105