假设一个班级有30位同学,编写程序,生成30个人的姓名,以及每个人语文,数学,外语,计算机,物理,制图六门课的课程成绩,要求每门课的成绩介于0-100之间,且每门课的成绩服从正态分布。
(1) 把生成的信息写入文本文件originGrade.txt,每行存放一个人的信息及各科成绩。
(2) 已知各门课程的对应的学分分别为:语文4.0学分,数学4.0学分,外语3.5学分,计算机3.0学分,物理3.0学分,制图2.5学分。读入上述生成的文本文件originGrade.txt中的内容,根据下面的公式计算每位同学的每门课程绩点和所有课程的平均绩点:
a) 每门课程的绩点=分数/10-5;(90分以上按90分计算)
b) 平均绩点=课程学分*课程绩点。
将同学的姓名及相关信息按照绩点进行排序,并排序后的学生信息和各科成绩输出到新的文本文件rankGrade.txt,每行存放一个人的信息及各科成绩。
(3) 读入上述生成的文本文件,对每科成绩进行计算统计,找到每科的平均分,最高分,以及每科最高分的人的姓名和成绩等相关成绩分析信息,并输出其中的信息到新的文本文件。
(4) 利用turtle库绘制每科的成绩分布饼状图。
动动你的小脑瓜