python-实现保留3位有效数字(四舍六入五成双规则)

news2024/9/20 0:58:17

项目场景:

实现保留3位有效数字(四舍六入五成双规则)


问题描述

  • 输入:输出:
  1. 1234 1234
  2. 12 12.0
  3. 4 4.00
  4. 0.2 0.200
  5. 0.32 0.320
  6. 1.3 1.30
  7. 1.235 1.24
  8. 1.245 1.24
  9. 1.2451 1.25

示例分析:

 


解决代码:

from decimal import Decimal
a = 1
while(a):
    n = input('请输入数字:')
    if ('.' in n):
        n = float(n)
        n1 = Decimal(str(n)) - Decimal(str(int(n)))
        if (len(str(n1)) == 5):
            n2 = int(n * 1000)
            l = len(str(n2))
            if (str(n2)[l-1] != '5' and n > 1):
                print(f'输出为{n:.2f}')
            elif (str(n2)[l-1] != '5' and n < 1):
                print(f'输出为{n:.3f}')
            else:
                if (int((n2/10)) % 2 == 0 and n > 1):
                    n = float(int(str(n2)[0:l-1])/100)
                    print(f'输出为{n:.2f}')
                elif (int((n2/10)) % 2 == 0 and n < 1):
                    print(f'输出为{n:.3f}') 
                else: 
                    n = float((n2 + 1)/1000)
                    if (n > 1):
                        print(f'输出为{n:.2f}')
                    else:
                        print(f'输出为{n:.3f}')
        elif ( n > 1):
            print(f'输出为{n:.2f}')
        else:
            print(f'输出为{n:.3f}')
    else:
        n = int(n)
        if (n > 99):
            print(f'输出为{n}')
        elif (n < 10):
            print(f'输出为{n:.2f}')
        else:
            print(f'输出为{n:.1f}')

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/197258.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

jvm启动流程以及自定义加载器

类加载运行过程&#xff0c;当我们用java命令运行某个类的main函数启动程序时&#xff0c;首先需要通过类加载器把主类加载到JVM。public class Math {public static final int initData 666;public static final User user new User();public int compute() {// 一个方法对应…

【C++】对象与类

【C】对象与类 文章目录【C】对象与类1、定义1.1 对象的定义1.2 类的定义2、对象与类的创建2.1 类的创建2.2 对象的创建3、封装3.1 访问限定符3.2 对封装的解释4、类的实例化5、类、对象大小6、this指针6.1 this指针概念6.2 this指针特点1、定义 1.1 对象的定义 现实世界对对…

写哪个IB科目的EE最易得A?

综合了IB论坛上学生的建议&#xff0c;根据IB毕业生们的看法&#xff1a; E同学&#xff1a;选择你感兴趣的科目写EE。 R同学&#xff1a;我推荐写IB英语EE&#xff0c;在我看来&#xff0c;英语很容易找到你感兴趣的内容&#xff0c;因为英语 EE 适用于诸多的不同主题。我觉得…

录制PPT课件哪个录屏软件好?这3款值得收藏

使用PPT课件进行教学&#xff0c;不仅可以让抽象的知识具体化&#xff0c;还可以让课堂变得更加生动有趣。在制作视频课程时&#xff0c;需要对PPT课件进行录制&#xff0c;那你知道录制PPT课件哪个录屏软件好吗&#xff1f;今天小编就给大家介绍3款值得收藏的录屏软件&#xf…

为什么GIF文件是图像文件而不是视频文件?(GIF文件格式详解)

今天整理硬盘的时候想到一个问题&#xff1a;GIF 是放在静态图像文件里还是视频文件里&#xff1f; 因为放视频里吧&#xff0c;GIF 的分类是静态图像&#xff0c;而且由图像组成&#xff1b;放图像里吧&#xff0c;它又会动。 然后我就开始想&#xff1a;GIF 会动但为什么被归…

分享113个图片切换JS特效,总有一款适合您

分享113个图片切换JS特效&#xff0c;总有一款适合您 113个图片切换JS特效下载链接&#xff1a;https://pan.baidu.com/s/1NNSP-DMf3n0PeNbdNd8jEg?pwdsfwr 提取码&#xff1a;sfwr Python采集代码下载链接&#xff1a;https://wwgn.lanzoul.com/iKGwb0kye3wj jQuery中间…

Java基础学习笔记(十九)—— 多线程

多线程1 多线程相关概念2 多线程的实现方式2.1 继承Thread类2.2 实现Runnable接口2.3 实现Callable接口3 线程休眠4 线程优先级5 守护线程6 线程同步6.1 案例引入6.2 同步代码块6.3 同步方法6.4 Lock锁6.5 死锁1 多线程相关概念 并行与并发&#xff1a; 并行&#xff1a;在同…

未授权和敏感文件泄露

目前存在未授权访问漏洞的服务主要 包括&#xff1a;NFS、Samba、LDAP、Rsync、FTP、GitLab、Jenkins、 MongoDB、Redis、ZooKeeper、ElasticSearch、Memcache、CouchDB、 Docker、Solr、Hadoop等。 redis未授权 通过手工进行未授权访问验证&#xff0c;在安装Redis服务的Kal…

MATLAB 线性整数规划

✅作者简介&#xff1a;人工智能专业本科在读&#xff0c;喜欢计算机与编程&#xff0c;写博客记录自己的学习历程。 &#x1f34e;个人主页&#xff1a;小嗷犬的个人主页 &#x1f34a;个人网站&#xff1a;小嗷犬的技术小站 &#x1f96d;个人信条&#xff1a;为天地立心&…

oracle官网下载指定版本的jdk

文章目录前言下载JDK环境变量前言 oracle官网下载jdk&#xff0c;如果是想下载指定版本的&#xff0c;总是提示需要你登录。如何解决呢&#xff1f; 下载JDK oracle官网 https://www.oracle.com 或者直达此页 https://www.oracle.com/java/technologies/downloads/archive…

springboot相关

2023.2.3 springboot的示例sagan涉及到很多软件技术&#xff0c;运行这个示例在Windows 7下遇到问题。将Windows 7重装为Windows 10专业版。下载了node-v18.14.0-x64.msi&#xff0c;安装node时可以选择安装相关的软件&#xff0c;例如python 3.11.0。下载python 3.11.0太慢了…

07、微服务组件Seata

1、事务简介 事务(Transaction)是访问并可能更新数据库中各种数据项的一个程序执行单元(unit)。在关系数据库中&#xff0c;一个事务由一组SQL语句组成。事务应该具有4个属性&#xff1a;原子性、一致性、隔离性、持久性。这四个属性通常称为ACID特性。 原子性&#xff08;ato…

正则表达式记录

正则用途:分割 查找 匹配 替换 1 * ?的区别 *代表匹配任意次, 包括0,1,多次代表匹配最少一次, 1或者多次?代表匹配最多1次,0,1次 2 单次边界(\b和\B) 2.1 定义 首先说一下零宽: 只匹配位置, 不匹配字符, 然后我们再来谈单词边界: 何谓单词? 在JS中, 单词的定义就是\w也…

Python中的字典

1. 前言 字典&#xff0c;是Python中唯一实现了映射关系的内置类型。 2.映射关系 摩斯密码就是通过映射关系来实现的。 这里的字母 A 和 .- 就是其中的一对映射关系&#xff0c;字母 U 和 …- 又是另一对映射关系&#xff0c;那么有了这张表&#xff0c;破解莫斯密码就不再…

矩阵相关的性质

矩阵相关的计算性质1.矩阵的某一行*一个常数2.矩阵的一行加(减)另一行3.交换矩阵的两行两个未知数两个方程线程方程组解的结构以几何的角度查看矩阵的方式初等矩阵采用初等变换的方式在矩阵的元素中进行操作 相关的性能的变化采用点阵的乘法&#xff0c;在矩阵的维度进行处理将…

DeepLabV3+:ASPP加强特征提取网络的搭建

目录 ASPP结构介绍 ASPP在代码中的构建 参考资料 ASPP结构介绍 ASPP&#xff1a;Atrous Spatial Pyramid Pooling&#xff0c;空洞空间卷积池化金字塔。 简单理解就是个至尊版池化层&#xff0c;其目的与普通的池化层一致&#xff0c;尽可能地去提取特征。 利用主干特征提取…

低代码开发——创新赋能企业办公模式转变

近年来&#xff0c;国内云计算高速发展、SAAS 软件模式快速普及、企业数字 化的需求增长等方面促进了低代码平台开发与应用的高速发展&#xff0c;使之成为继 RPA之后企业数字化转型的明星工具。如果说RPA 将线上流程自动化&#xff0c;那么低代码解决了更基础的问题&#xff…

微信小程序 java Springboot大学生心理健康测试职位推荐系统

心理测试学生端要求在系统的安卓手机上可以运行&#xff0c;主要实现了线上考试测试等相关信息的查看&#xff0c;并且根据需求进行对管理端&#xff1b;首页、个人中心、学生管理、职业职位管理、职位申请管理、活动类型管理、活动项目管理、活动报名管理、试卷管理、试题管理…

Python算术运算符

Python算术运算符以下假设变量&#xff1a; a10&#xff0c;b20&#xff1a;运算符描述实例加 - 两个对象相加a b 输出结果 30-减 - 得到负数或是一个数减去另一个数a - b 输出结果 -10*乘 - 两个数相乘或是返回一个被重复若干次的字符串a * b 输出结果 200/除 - x除以yb / a …

C++内联函数:那时我还太年轻,并不知道使用inline带来的效率,早已在暗中标好了价格

&#x1f451;专栏内容&#xff1a;C学习笔记⛪个人主页&#xff1a;子夜的星的主页&#x1f495;座右铭&#xff1a;日拱一卒&#xff0c;功不唐捐 文章目录一、前言二、内联函数1、起源2、概念三、与宏的区别1、宏的缺点2、两者区别四、内联函数的代价代价一&#xff1a;可执…