飞道的博客

Python计算山东新高考选考科目卷面原始成绩为等级成绩

425人阅读  评论(0)

近期会议:

2021年1月18-24日普开数据第14届高校师资培训班(Python 数据采集、分析与可视化)

好消息:“Python小屋”编程比赛正式开始

推荐图书:

《Python程序设计基础(第2版)》,ISBN:9787302490562,董付国,清华大学出版社,第18次印刷,清华大学出版社2019年度畅销图书

图书详情:

配套资源:用书教师可以免费获取教学大纲、教案、课件、源码、习题答案、课堂管理与考试系统。

非计算机专业《Python程序设计基础》教学参考大纲

《Python程序设计基础(第2版)》习题答案

==============

问题描述:

山东省新高考政策3+3中,考生必考科目有语文、数学、英语,然后需要在物理、化学、生物、地理、历史、政治这6科中任选3个科目,自主选择的3个科目按等级分计入高考成绩。把每个科目的卷面原始成绩参照正态分布原则划分为8个等级,确定每个考生成绩所处的比例和等级,然后把原始成绩转换为对应的等级成绩。考生原始成绩所处的位次越靠前,计算得到的等级成绩越高。原始成绩的等级划分与等级成绩的对应关系如下:

A等级(排名前3%)==>[91,100];

B+等级(3%-10%)==>[81,90];

B等级(10%-26%)==>[71,80];

C+等级(26%-50%)==>[61,70];

C等级(50%-74%)==>[51,60];

D+等级(74%-90%)==>[41,50];

D等级(90%-97%)==>[31,40];

E等级(97%-100%)==>[21,30]。

例如,小明选了化学,卷面原始成绩为77分,全省选考化学成绩从高到低排序后,小明的分数落在前3%-10%这个区间,对应B+等级,这个区间内的最高分和最低分分别为79和70分,对应的等级成绩区间为[81,90],那么转换为等级成绩之后小明的分数为(77-70)/(79-70)*(90-81)+81=88分,小明最终成绩为88分。

函数convert_score()接收参数score、grade、high、low分别表示考生卷面原始分数、所处等级、该等级卷面原始分数的最高分和最低分,要求计算并返回考生的等级成绩,结果保留最多3位小数。例如,main(77, 'B+', 79, 70)返回88.0。

参考代码:

温馨提示:

关注微信公众号“Python小屋”,在公众号后台发送消息“大事记”可以查看董付国老师与Python有关的重要事件;发送消息“教材”可以查看董付国老师出版的Python系列教材(已累计印刷超过100次)的适用专业详情;发送消息“历史文章”可以查看董付国老师推送的超过1000篇原创技术文章;发送消息“会议”或“培训”可以查看近期董付国老师的培训安排;发送消息“微课”可以查看董付国老师免费分享的超过500节Python微课视频;发送消息“课件”可以查看董付国老师免费分享的Python教学资源;发送消息“小屋刷题”可以下载“Python小屋刷题神器”,免费练习1235道客观题和139道编程题,题库持续更新;发送消息“编程比赛”了解Python小屋编程大赛详情。


转载:https://blog.csdn.net/oh5W6HinUg43JvRhhB/article/details/110507485
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场