PTA PYthon 7-5 计算绩点

这篇具有很好参考价值的文章主要介绍了PTA PYthon 7-5 计算绩点。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

学分绩点计算办法:
1、按成绩折算课程绩点:
90分 - 100分 折合4.0 - 5.0绩点,即90分折合4.0,91分折合4.1,依次类推
80分 - 89分 折合3.0 - 3.9绩点,即80分折合3.0,81分折合3.1,依次类推
70分 - 79分 折合2.0 - 2.9绩点,即70分折合2.0,71分折合2.1,依次类推
60分 - 69分 折合1.0 - 1.9绩点,即60分折合1.0,61分折合1.1,依次类推
不足60分的绩点为0

2、计算公式:
课程学分绩点 = 课程绩点 × 课程学分
平均学分绩点 = 课程学分绩点总和 ÷ 课程学分总和

输入学生各门课程的成绩和学分,编程实现学分绩点计算,输出每门课程的绩点,学分和课程学分绩点,并输出平均学分绩点

输入格式:

每一行输入课程的成绩和学分,以#结束

输出格式:

每一行输出课程绩点,学分,课程学分绩点(保留两位小数),每一项占8个字符的宽度
最后一行输出平均学分绩点(保留两位小数)

输入样例:

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

95 2
87 3
83 2
78 3
66 4
56 2
93 1
#

输出样例:

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

课程绩点   学分   课程学分绩点
4.5      2        9.00    
3.7      3        11.10   
3.3      2        6.60    
2.8      3        8.40    
1.6      4        6.40    
0        2        0.00    
4.3      1        4.30    
平均学分绩点 = 2.69

答案:

# 定义一个空列表用于存储课程成绩和学分
courses = []

# 输入课程成绩和学分
while True:
    input_data = input().strip()
    if input_data == "#":
        break

    # 将输入的数据分割成成绩和学分
    score, credit = map(int, input_data.split())
    courses.append((score, credit))


# 定义一个函数用于根据成绩计算课程绩点
def calculate_gpa(score):
    if 90 <= score <= 100:
        return 4.0 + (score - 90) / 10
    elif 80 <= score < 90:
        return 3.0 + (score - 80) / 10
    elif 70 <= score < 80:
        return 2.0 + (score - 70) / 10
    elif 60 <= score < 70:
        return 1.0 + (score - 60) / 10
    else:
        return 0


# 计算每门课程的绩点、学分和课程学分绩点
course_gpas = []
total_credit_points = 0
total_credits = 0

for score, credit in courses:
    gpa = calculate_gpa(score)
    credit_points = gpa * credit
    total_credit_points += credit_points
    total_credits += credit
    course_gpas.append((gpa, credit, credit_points))

# 输出每门课程的绩点、学分和课程学分绩点
print("{:<7}{:<5}{:<5}".format("课程绩点", "学分", "课程学分绩点"))
for gpa, credit, credit_points in course_gpas:
    if gpa == 0:
        print("{:<9}{:<9}{:<8.2f}".format(gpa, credit, credit_points))
    else:
        print("{:<9.1f}{:<9}{:<8.2f}".format(gpa, credit, credit_points))

# 计算平均学分绩点
average_gpa = total_credit_points / total_credits

# 输出平均学分绩点
print("平均学分绩点 =", "{:.2f}".format(average_gpa), end='')

 文章来源地址https://www.toymoban.com/news/detail-767048.html

到了这里,关于PTA PYthon 7-5 计算绩点的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • PTA Python作业4循环结构

    目录 判断题 单选题 编程题 7-1 最大公约数 7-2 指定范围内的素数 7-3 鸡兔同笼 1-1不管是单层循环还是多层循环,只要执行到break语句,所有循环立即结束。(F) 1-2在Python循环中,对于带有else子句的循环,如果因为执行了break语句而退出的话,会执行else子句的代码。(F) 1-3在P

    2024年02月07日
    浏览(42)
  • 大一python语言程序设计,大一pta编程题python答案

    大家好,小编为大家解答大一python语言程序设计的问题。很多人还不知道大一pta编程题python答案,现在让我们一起来看看吧! 实例001:数字组合 题目 有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少? 程序分析 遍历全部可能,把有重复的剃

    2024年03月22日
    浏览(79)
  • PTA-判断回文字符串(python)

    判断回文字符串 作者 陈春晖 单位 浙江大学 回文就是字符串中心对称,从左向右读和从右向左读的内容是一样的。 输入一个字符串,判断该字符串是否为回文,只考虑数字和字母字符,字母的大小写没有区别。 输入格式: 输入一个字符串。 输出格式: 是回文,一行输出

    2024年04月12日
    浏览(57)
  • PTA Python作业7文件及异常处理

    目录 判断题 单选题 函数题 6-1 jmu-python-判断质数 编程题 7-1 下标异常 7-2 try-except-else异常 7-3 综合题:学生成绩输入及输出 1-1Python内置的open函数,打开文件的时候可能会产生异常。(T) 1-2二进制文件不能使用记事本程序打开。(F) 1-3Python对文件的操作中,close函数用于文件关闭

    2024年02月08日
    浏览(43)
  • Python科学计算进阶:数值积分与微分求解算法应用在Python

    在Python中进行科学计算时,数值积分和微分是非常常见的操作。下面我将介绍几种常用的数值积分和微分求解算法,并给出Python代码示例。 一、数值积分 矩形法 矩形法是一种简单的数值积分方法,它使用矩形近似代替被积函数。这种方法虽然简单,但对于某些简单函数可以

    2024年02月02日
    浏览(49)
  • 浙大版PTA《Python 程序设计》题目集 参考答案

    本答案配套详解教程专栏,欢迎订阅: PTA浙大版《Python 程序设计》题目集 详解教程_少侠PSY的博客-CSDN博客

    2024年02月08日
    浏览(66)
  • Python数值和符号算法计算及3D视图物理数学波形方程

    Python数值和符号计算及3D可视化以下物理方程: 物理数学方程分析:二分算法和牛顿-拉夫森算法解方程根。最小二乘法拟合方程和数据。短期傅里叶变换和小波分析非平稳信号。使用主成分分析复杂和大型数据集,提取时空相关性,分形维数测定。 非线性震动常微分方程:

    2024年04月14日
    浏览(48)
  • 计算机毕设 python opencv 机器视觉图像拼接算法

    🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。 为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天

    2024年02月07日
    浏览(59)
  • 【全解析 | PTA】浙大版《Python 程序设计》题目集-第二章

    一、判断题 1. 输入正整数6和5,要求和,6+66+666+6666+66666,下面程序正确吗? F     a=int(input())        n=int(input())        print(sum([int(\\\'a\\\'*i) for i in range(1,n+1)]))         在代码中,使用了字符串 ‘a’ 而不是变量 a 的值是因为字符串 ‘a’ 在引号内被视为文本常量,而不是变

    2024年03月12日
    浏览(234)
  • 【全解析 | PTA】浙大版《Python 程序设计》题目集-第三章

    一、判断题 1.\\\'age\\\'+23不是正确的表达式。T 2 . 列表可以用find()函数来搜索数据是否在列表中。F         find()函数是字符串处理函数;Python find() 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,如果包含子

    2024年04月15日
    浏览(60)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包