【PAT_Python解】1054 求平均值

原题链接:PTA | 程序设计类实验辅助教学平台

Tips:以下Python代码仅个人理解,非最优算法,仅供参考!多学习其他大佬的AC代码!

测试点2:如果 K 为 1,则输出 The average of 1 number is Y

一开始做的时候测试点2答案错误,请注意number不是numbers,Y是float形式2位小数

def main():
    n = int(input())
    _nums = list(map(str,input().split()))
    # nums = []
    cnt = sum = 0
    for i in _nums:
        try:
            num = float(i)
        except:
            print(f'ERROR: {i} is not a legal number')
            continue
        if num > 1000 or num < -1000:
            print(f'ERROR: {i} is not a legal number')
            continue
        tmp = str(num)
        frac = tmp[tmp.find('.')+1:]
        if len(frac) > 2:
            print(f'ERROR: {i} is not a legal number')
            continue
        cnt += 1
        sum += num
    if cnt == 0:
        print('The average of 0 numbers is Undefined')
    elif cnt == 1:
        print(f'The average of {cnt} number is {sum/cnt:.2f}')
    else:
        print(f'The average of {cnt} numbers is {sum/cnt:.2f}')
main()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

新时代先锋

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值