其他分享
首页 > 其他分享> > GPA计算

GPA计算

作者:互联网

GPA计算
    学生成绩实行平均学分绩点制
        实际考分按照不同的学科的不同学分按一定的公式进行计算
            分段
                90-100    4.0
                85-89    3.7
                82-84    3.3
                78-81    3
                75-77    2.7
                72-74    2.3
                68-71    2
                64-67    1.5
                60-63    1
                60以下    0
            公式:
                1、一门课程的学分绩点=该课绩点*该课学分
                2、总评绩点=所有学科绩点之和/所有课程学分之和
                
            分析:输入总的课程数n(n<10)
                 相应课程得到的学分(空格隔开)
                 对应的实际得分
                 
             得到了我们需要的条件 
             然后开始计算我们的gpa

import java.util.Scanner;
public class M {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意,如果输入是多个测试用例,请通过while循环处理多个测试用例
        int n = in.nextInt();
        int []s1=new int[n];//课程学分
        int []s2=new int[n];//课程实际得分
        double []s3=new double[n];//绩点
        double []score=new double[n];//学分绩点=绩点*学分
        double sum1=0;//学科绩点之和
        double sum2=0;//学分之和
        for (int i=0;i<n;i++){
            s1[i]=in.nextInt();
        }
        for (int i=0;i<n;i++){
            s2[i]=in.nextInt();
        }
        for (int i=0;i<s2.length;i++){
            if (s2[i]>=90&&i<100){
                s3[i]=4.0;
            }
            else if (s2[i]>=85&&i<90){
                s3[i]=3.7;
            }
            else if (s2[i]>=82&&i<85){
                s3[i]=3.3;
            }
            else if (s2[i]>=78&&i<82){
                s3[i]=3.0;
            }
            else if (s2[i]>=75&&i<78){
                s3[i]=2.7;
            }
            else if (s2[i]>=72&&i<75){
                s3[i]=2.3;
            }
            else if (s2[i]>=68&&i<72){
                s3[i]=2.0;
            }
            else if (s2[i]>=64&&i<68){
                s3[i]=1.5;
            }
            else if (s2[i]>=60&&i<64){
                s3[i]=1.0;
            }
            else if (s2[i]<60){
                s3[i]=0.0;
            }
        }
        for (int i=0;i<n;i++){
            score[i]=s3[i]*s1[i];
            sum1=sum1+score[i];
            sum2=sum2+s1[i];
        }
        System.out.printf("%.2f",sum1/sum2);
    }
}

 

标签:绩点,计算,int,double,GPA,学分,&&,new
来源: https://www.cnblogs.com/coderyang1/p/12397692.html