PAT 1054 求平均值 python

2023-10-27

1054 求平均值 (20 分)

本题的基本要求非常简单:给定 N 个实数,计算它们的平均值。但复杂的是有些输入数据可能是非法的。一个“合法”的输入是 [−1000,1000] 区间内的实数,并且最多精确到小数点后 2 位。当你计算平均值的时候,不能把那些非法的数据算在内。

输入格式:

输入第一行给出正整数 N(≤100)。随后一行给出 N 个实数,数字间以一个空格分隔。

输出格式:

对每个非法输入,在一行中输出 ERROR: X is not a legal number,其中 X 是输入。最后在一行中输出结果:The average of K numbers is Y,其中 K 是合法输入的个数,Y 是它们的平均值,精确到小数点后 2 位。如果平均值无法计算,则用 Undefined 替换 Y。如果 K 为 1,则输出 The average of 1 number is Y。

输入样例 1:

7
5 -3.2 aaa 9999 2.3.4 7.123 2.35

输出样例 1:

ERROR: aaa is not a legal number
ERROR: 9999 is not a legal number
ERROR: 2.3.4 is not a legal number
ERROR: 7.123 is not a legal number
The average of 3 numbers is 1.38

输入样例 2:

2
aaa -9999

输出样例 2:

ERROR: aaa is not a legal number
ERROR: -9999 is not a legal number
The average of 0 numbers is Undefined

作者: CHEN, Yue
单位: 浙江大学
时间限制: 400 ms
内存限制: 64 MB
代码长度限制: 16 KB

问题分析:
输出时分3种情况,len=0, len=1,len>1
平均数保留两位小数

代码:

input()
num = input().split()
rst = []
for i in num:
    try:
        float(i)
        if '.' in i:
            s = i.split('.')
            if len(s[-1]) > 2:
                raise Exception
        if not -1000 <= float(i) <= 1000:
            raise Exception
        rst.append(float(i))

    except:
        print('ERROR: {} is not a legal number'.format(i))

if len(rst) == 0:
    print('The average of 0 numbers is Undefined')
elif len(rst) == 1:
    print('The average of 1 number is {:.2f}'.format(rst[0]))
else:
    print('The average of {} numbers is {:.2f}'.format(len(rst), sum(rst)/len(rst)))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PAT 1054 求平均值 python 的相关文章

随机推荐

  • 加密新潮流:社交代币衰落 社区代币崛起?

    这不是 Forefront 首次回顾加密行业中代币化社区赛道的年度发展历程 但毫无疑问 2022 年的情况确实发生了很大变化 其中 Forefront 的第一份报告 2020 年社交代币年度回顾 探讨了加密社交的新兴前景 涵盖了通过代币化时
  • 小程序面试题

    文章目录 简单谈谈微信小程序 小程序的原生组件有哪些 小程序的安卓版和ios版是怎么开发出来 uni app弹窗被覆盖怎么解决 小程序生命周期 小程序路由跳转 小程序的兼容问题有哪些 小程序框架都掌握哪一些 uniapp都会哪一些 平时开发
  • vue电池小图标

    简单的电池小图标 根据电量展示不同的颜色
  • java 静态 编译_Java中的动态和静态编译

    public class Frame public static void main String args throws Exception System out println 请输入您要输入的类的名字 输入一个类的名字 java ut
  • 常用工具整理

    参考网站 自我的进化 闪星 努力学习 开心生活 随机邮箱 生成一个随机邮箱 当你要使用临时邮箱接收验证码的时候可以使用 IP检查 检查当前使用的ip 多空间浏览器 iOS版下载地址 Android版下载地址 二维码生成器 句子 单词 翻译
  • 最后一波机会!必看再也不能错过的AI搞钱神器!

    给大家推荐7款可以当副业做的AI搞钱神器 第一款 产品介绍 AiTxt智能助手 可以基于Ai生成你想要的一切文案 AiTxt智能助手是基于ChatGPT3 5打 造一个更适合普通人使用的Ai工具箱 搞钱小妙招 A文案工具 输入简单指令即可快
  • android9 update_engine 升级

    最近在搞android 9的升级 这里顺便做一下记录 其实关于update engine升级这块已经有很多文章了写的都 很好 我这边只是在前人的基础上 按照自己理解记录一下 大体分为一下几部分 1 A B升级和过去的recover升级的区别
  • 「考生说」计算机专业内卷严重,我真的会编程吗?

    现在每次听到大家都在说 原来你会编程呀 都会有一点小小的庆幸 但是其实对于程序员而言而言 能编程 会编程 和 学编程 是不同的概念 从根本上说 编程就是和计算机沟通 学习编程可以让自己变得理性 严谨起来 从电脑的角度去思考问题 去解决问题
  • 前端常用的组件库

    Vue2 组件库们 Element https element eleme cn zh CN component select 主用于后台项目 Vant https youzan github io vant zh CN 主用于移动端项目
  • java 遍历目录下所有文件_java实现遍历某个目录(包括子目录)下的所有文件

    在java中遍历一个文件夹里边的所有文件 可以有两种方式 一 递归遍历 通常也是开发者第一时间能想到的方法 递归遍历的优点是 实现起来相对简单 代码量相对较少 执行效率较高 缺点是 比较吃内存 对硬件要求较高 在线视频教程分享 java在线
  • 【运维面试】Docker技术面试题总结

    运维面试 Docker技术面试题总结 一 Docker的基础概念 1 1 什么是Docker 它可以为我们提供哪些便利 1 2 Docker的优点是什么 1 3 Docker的镜像是什么 1 4 Docker的数据卷是什么 1 5 Dock
  • Ubuntu中安装tftp/tftp-hpa服务的方法

    检查tftp是否已经安装 netstat a grep tftp 若出现 udp 0 0 tftp 则说明已经安装 否则没有 1 安装相关软件包 apt get install tftpd 服务端 apt get install tftp
  • 【计算机毕业设计】java SpringBoot众筹平台 众筹服务网站

    毕设帮助 源码交流 技术解答 见文末 一 前言 众筹 也就是所谓的大众筹资 主要的途径就是通过互联网平台向网友募集项目资金 它是互联网的产物 众筹平台 简单来说就是开办众筹业务 为社会投资者与资金需求者提供中介服务的特殊的服务平台 它主要是
  • $nextTick 和 $set、$delete

    nextTick 一 操作DOM元素 二 应用场景 set delete 一 引入背景 直接给对象复制操作 虽然可以新增属性 但是不会触发视图更新 官方文档定义 如果实力创建之后添加新的属性到实例上 它不会触发视图更新 二 使用 问题 定义
  • Permission denied: user=root, access=EXECUTE, inode=“/tmp“:atguigu:supergroup:drwx------

    出错细节 Caused by org apache hadoop ipc RemoteException org apache hadoop security AccessControlException Permission denied
  • 【ML】少样本学习解释和分步如何使用

    大家好 我是Sonhhxg 柒 希望你看完之后 能对你有所帮助 不足请指正 共同学习交流 个人主页 Sonhhxg 柒的博客 CSDN博客 欢迎各位 点赞 收藏 留言 系列专栏 机器学习 ML 自然语言处理 NLP 深度学习 DL fore
  • 基于c3c2440 Linux SPI驱动程序移植与测试

    基于c3c2440 Linux SPI驱动程序移植与测试 环境 ubuntu14 04 TQ2440开发板 linux3 0内核 linux3 0内核移植笔记点此 1 配置内核 Device Drivers gt SPI support g
  • 由于找不到msvcp120.dll,无法继续执行代码的三个修复教程

    打开运行photoshop 3dmx pr等软件的时候 计算机提示 由于找不到msvcp120 dll 无法继续执行代码 这个一般都不会由于软件引起的问题 而是计算机Windows系统中的动态链接库损坏了 msvcp120 dll是一个动态
  • Adobe illustrator安装路径选择的问题

    Adobe illustrator安装路径选择的问题 累 Adobe illustrator这个软件是挺大的 单从下载就要等好久 为了避免安装到C盘博主真的是累 不知道下载了几个版本反反复复安装 卸载 安装 卸载 就是不给博主选择路径的余地
  • PAT 1054 求平均值 python

    1054 求平均值 20 分 本题的基本要求非常简单 给定 N 个实数 计算它们的平均值 但复杂的是有些输入数据可能是非法的 一个 合法 的输入是 1000 1000 区间内的实数 并且最多精确到小数点后 2 位 当你计算平均值的时候 不能