ACM模式联系篇

该篇文章介绍了如何通过Python程序接收用户输入的字母成绩,转换为数字后计算平均绩点,只考虑有效数字部分。
摘要由CSDN通过智能技术生成

7. 平均绩点

输入的数组为字符串,多组输入,字符串内字符有空格,输出小数点后两位

while True:  #代码使用一个无限循环 (while True) 来持续接收用户的输入,直到出现异常导致循环被中断。
    try:
        n = input().replace(" ", "").replace("A", "4").replace("B", "3").replace(
            "C", "2").replace("D", "1").replace("F", "0")  #在每次循环中,代码使用 input() 函数获取用户输入的字符串,并执行一系列的替换操作。具体地,代码使用 replace() 方法将字符串中的特定字符替换为相应的数字。例如,将"A"替换为"4","B"替换为"3",以此类推。
        s = 0 #替换完成后,代码初始化变量 s 为0,用于存储每个数字的总和
        for i in n: 
            if i not in '43210': #
                print('Unkown') #代码使用一个循环遍历字符串 n 中的每个字符。如果字符不是数字 0-4 中的任意一个,则打印"Unknown"并跳出循环
                break
            s+=int(i)
        else:
            print(f"{s / len(n):.2f}")  # 如果循环正常结束(即所有字符都是数字),则计算平均值并使用 print() 函数输出结果,保留两位小数
    except:
        break

9. 奇怪的信

def getsum(n):
    s=0
    while n:
        
        a=n%10
        if a%2==0:
            s+=a
        n=n//10
    return s
    
while True:
    try:
        n=input()
        sum=getsum(int(n))
        print(sum)
        print()
    except:
        break
        

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值