pta 7-4制作评分器

制作评分器只用到了一个类,反正过了就行

7-4 制作评分器

分数 50

全屏浏览

切换布局

作者 jolie

单位 佳木斯大学

本题目要编写一个评分器。创建考试后,当输入做题总数和错题数时自动求出分数
代码中包含两个类,分别是:
1、父类Grade负责将成绩分成级别,如,A:100-90;B:89-80;C:79-70;D:69-60;F:低于60分
私有成员:
字符变量letter---- 表示成绩的级别,如‘A’、‘B’等
单精度浮点变量score---表示真实分数
函数calcGrade()---无返回值,将分数分成级别
公有成员:
setScore函数--设置分数
getScore函数--获取分数
getLetter函数---获取成绩级别
2、子类Test 公有继承Grade,用以创建考试
私有成员:
变量numQuestions---- 表示做题总数
变量pointsEach---表示每题分数
变量numMissed()---表示做错题数
公有成员:
构造函数,用以初始化考试做题总数与错题数

输入格式:

总题数
错题数

输出格式:

The score is:分数
The grade is:级别

输入样例:

在这里给出一组输入。例如:

12
3

输出样例:

在这里给出相应的输出。例如:

The score is:75.00
The grade is:C

以下是代码C++

#include
using namespace std;

class Grade
{

public:
    string letter;
    double score;
    Grade(int all, int p)
    {
        score = 100.0*(all-p)/all;
        calcGrade();
    }
    
    void calcGrade()
    {
        if(score>=90)
        {
            letter = 'A';
        }
        else if(score>=80 && score < 90)
        {
            letter = 'B';
        }
        else if(score>=70 && score <80)
        {
            letter = 'C';
        }
        else if(score >=60 && score <70)
        {
            letter = 'D';
        }
        else
        {
            letter = 'F';
        }
    }
    double getScore()
    {
        return score;
    }
    string getLetter()
    {
        return letter;
    }
};

// class Test: public Grade
// {
// public:
//     int nump, point, numm;
//     Test(int p, int m):nump(p), numm(m)
//     {
    
//     }
    
// };


int main()
{
    int np,p;
    cin>>np>>p;
    Grade* g= new Grade(np, p);
    printf("The score is:%.2f\n", g->getScore());
    cout<<"The grade is:"<getLetter()<

随便写写方便大家面向结果编程

你可能感兴趣的:(算法)