📜  如何计算 cgpa (1)

📅  最后修改于: 2023-12-03 15:09:15.127000             🧑  作者: Mango

如何计算 CGPA

CGPA( Cumulative Grade Point Average ) 是指学生历年学期的加权平均绩点。CGPA通常用于指导老师评估学生的学业表现。计算学生的CGPA需要以下步骤:

  1. 计算每门课程的绩点 (GPA)

对于每门课程,根据学生在该门课程中的成绩,可以计算绩点。绩点通常采用4.0系统,也就是说,对于A+级别(90分以上),绩点为4.0;对于A级别(80分以上),绩点为3.7;对于B+级别(75分以上),绩点为3.3,以此类推。

下面是一个简单的C++代码实现:

double getGPA(double score){
    if(score>=90){
        return 4.0;
    }
    else if(score>=85){
        return 3.7;
    }
    else if(score>=75){
        return 3.3;
    }
    else if(score>=70){
        return 3.0;
    }
    else if(score>=65){
        return 2.7;
    }
    else if(score>=60){
        return 2.3;
    }
    else if(score>=55){
        return 2.0;
    }
    else if(score>=50){
        return 1.7;
    }
    else if(score>=45){
        return 1.3;
    }
    else if(score>=40){
        return 1.0;
    }
    else{
        return 0.0;
    }
}
  1. 计算每个学期的加权平均绩点 (SGPA)

对于每个学期,根据学生所修读的所有课程的绩点和学分,可以计算该学期的加权平均绩点(SGPA)。

下面是一个Python代码实现:

def getSGPA(grades):
    gpas = [getGPA(score) for score in grades]
    credits = [3, 2, 4] #每门课的学分
    weighted_gpas = [gpas[i]*credits[i] for i in range(len(gpas))]
    return sum(weighted_gpas)/sum(credits)
  1. 计算历年学期的加权平均绩点 (CGPA)

对于历年学期的成绩,根据每个学期的加权平均绩点及其相应的学分,可以计算CGPA。

下面是一个Java代码实现:

public double getCGPA(List<Double> sgpas, List<Integer> credits){
    double weighted_sgpa_sum = 0.0;
    int total_credits = 0;
    for (int i = 0; i < sgpas.size(); i++){
        weighted_sgpa_sum += sgpas.get(i) * credits.get(i);
        total_credits += credits.get(i);
    }
    return weighted_sgpa_sum / total_credits;
}

这就是计算CGPA的基本步骤。希望这对计算机专业的同学有所帮助!