python-实现保留3位有效数字(四舍六入五成双规则)
项目场景:
实现保留3位有效数字(四舍六入五成双规则)
问题描述
- 输入:输出:
- 1234 1234
- 12 12.0
- 4 4.00
- 0.2 0.200
- 0.32 0.320
- 1.3 1.30
- 1.235 1.24
- 1.245 1.24
- 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}')
python-实现保留3位有效数字(四舍六入五成双规则)相关推荐
- 保留三位有效数字,四舍六入五成双
举例: 输入:1234 输出:1234 1234.3 1234 12 12.0 4 4.00 1.3 1.30 1.235 ...
- 实现保留3位有效数字(四舍六入五成双规则)
目录 实现保留3位有效数字(四舍六入五成双规则) 1.程序简介 输出样例 2.程序代码 3.运行结果 实现保留3位有效数字(四舍六入五成双规则) 1.程序简介 输出样例 输入:输出: 1234 123 ...
- “四舍六入五成双规则” 与 C语言如何实现“四舍五入”
1.四舍六入五成双规则 对于位数很多的近似数,当有效位数确定后,其后面多余的数字应该舍去,只保留有效数字最末一位,这种修约(舍入)规则是"四舍六入五成双",也即"4舍6入 ...
- java 四舍六入五成双_【数据小常识】“四舍六入五成双”
"四舍六入五成双"规则如下: "四舍六入五成双",也即"4舍6入5凑偶",这里"四"是指≤4 时舍去,"六&q ...
- Java中四舍五入和四舍六入五成双
Math.round()的取整规则结论:四舍五入下取整 例如 A: 11.2 ----> 11 B: 11.6 ----> 12 C: 11.5--->12 D: 11.51-> ...
- python中round函数的精度保留方法---四舍六入五成双
当我们利用python进行数据计算时,通常会对浮点数保留相应的位数,这时候就会用到round函数,相信各位朋友在进行使用时会遇到各种问题,关于round函数保留精度.保留方法的问题,本文会进行详细的解 ...
- 四舍六入五成双并保留一位有效位-数据修约
C# /// <summary>/// 数据修约 -- 四舍六入5成双,至少保留一位有效位/// 数值0.00512,保留2位,修约为0.01/// </summary>/// ...
- 【Python】银行家算法(四舍六入五成双)和使用decimal进行四舍五入处理
在python3中,round(num,n)和'%.nf'%num都是使用银行家算法进行小数位的处理的,即四舍六入五成双.(python2不记得了) 四舍六入五成双介绍 和四舍五入不同的是,对于最大小 ...
- JAVA计算保留小数-四舍六入五成双
四舍六入五成双 含义: 对于位数很多的近似数,当有效位数确定后,其后面多余的数字应该舍去,只保留有效数字最末一位,这种修约(舍入)规则是"四舍六入五成双",也即"4舍6入 ...
最新文章
- English Spoken Math
- 比较好的电脑系统_win10电脑系统选择什么版本比较好
- 关于hive中Map join 时大表left join小表的问题
- 【专栏】好Leader和差Leader的8个区别
- WCF - 服务实例管理模式
- EIGRP stub SIA
- python3.5文档
- 《MFC初探》之变量类型
- 面试官Diss我能力不如工作3年
- HTML5 device access 设备访问
- Win8 忘记密码 解决办法【在E450c实测有效】
- 数据包接收系列 — NAPI的原理和实现
- 如何修改安卓app图标和名称
- hikaricp mysql_HikariCP
- 【openGL2021版】链接FBX模型库
- 清理所有的java注册表_一些陈旧的注册表垃圾清理脚本:注册表冗余数据清理.reg...
- 【形式化学习笔记】1:Event-B相继式(Sequent)和推理规则(Inference Rule)
- 微信公众号开发本地环境搭建
- 三国皇帝的寡妇秘史(1)
- Hadoop 学习路线图
热门文章
- 开始我的WebWork之旅
- vuecli4关于Warning in ./src/plugins/element.js “export ‘default’ (imported as ‘Vue’) was not found in
- 计算机网络课外实验一级 20175319江野
- Android动态加载APK插件类
- jOOQ 代码生成工具的使用说明
- [FAQ11783][NW]MVNO忽略国内漫游(ignore national roaming)
- 3. Proxmox VE 配置 NTP
- 如何从零学习 React 技术栈
- 【TCP】Recv-Q和Send-Q 不要在有什么误解了
- 通过internet连接到股票信息服务器,一种股票机的制作方法