该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

关于

>>>10%-3

-2

理解:10/-3=-3.3333333

整除后向下圆整

10//-3=-4

求余10-(-3)*(-4)=-2

>>>-10%3

2

理解:-10/3=-3.3333333

整除后向下圆整

-10//3=-4

求余(-10)-3*(-4)=2

老是对这个python求除法如6/9=0.6666666666666666 10/3=3.3333333333333335等不正确感到无法理解,然后发现不是只有python这样,其余的语言如java等也是这样,使用时只要在限定位数里面下个限定就好了。。。

>>> round(6/9,15)

0.666666666666667

>>> round(10/3,15)

3.333333333333333

当然前提是小数后面要小于16位,如果不小于16位超过了精度还是一样的结果,与语言无关,是cpu的运算底层的问题。

那如果非要得到不小于16位以上的正确小数结果呢?那只能通过一个流程来处理了。。。

# -*-coding: utf-8-*-

while 1:

try:

a,b = eval(input("请输入2个整数,用英文半角逗号隔开:"))

if b == 0:

raise Exception

n= int(input("请输入要达到的小数位数:"))

break

except:

print("输入错误,除数不能为0或者逗号为中文全角逗号,请重新输入")

#2,计算商和余数

s= a//b#取商的整数部分

r = a%b

#取余数

print("经过计算,商是:",s,"余数是:",r)

#3,如果有余数,则继续计算得到指定的小数位数为止

if r == 0:

print("{}除以{}能够整除,结果为{},无小数位数。".format(a,b,s))

else:#如果有余数则继续计算

xs = str(s)+"."#先设置小数的整数部分及小数点

xs1 = ""#初始化小数位

#4,设置循环条件为小数位数不足指定位少一位数

while len(xs1)

r = r*10#余数增大10倍,再除以b

xs2 = r//b

xs1 = xs1 + str(xs2)#得到的整数部分写入小数位置

r = r%b#继续取余数

#5,处理最后一位小数4舍5入

while len(xs1)

r = r*10#余数增大10倍,再除以b

xs4 = r//b

xs3 = xs1 + str(xs4)#得到的整数部分写入小数位置

r = r%b#继续取余数

xs5 = xs3[n:1]

xs6 = xs3[(n+1):1]

xs6 = int(xs6)

if xs6<5:

xs5 = xs5

else:

xs5 = xs5 + 1

xs1 = xs1+str(xs5)

#6,输出结果

print("python直接计算%d除以%d的值为:%s" %(a,b,a/b))

print("指定保留%d位小数的值为:%s"%(n,(xs+xs1)))

内容都是百度的,最后的那个第5步是我自己加的,没有提示语法不对,不知道是什么原因算不出来,把第五步去掉就正常,但是最后一位没有四舍五入。。。。

python做除法有不精确的尾数_python除法运算的一点讨论,大神指点一个问题没有解决。谢谢。。...相关推荐

  1. python大神写的代码_初学Python,只会写简单的代码。手头有份Python代码,但是调用C模块生成的.pxd和.pyx文件,运行过程总报错,希望大神指点,调试前该做哪些工作呢?...

    报错内容如下: Traceback (most recent call last): File "E:\Python27\setup.py", line 16, in from s ...

  2. python导入pyx文件_初学Python,只会写简单的代码。手头有份Python代码,但是调用C模块生成的.pxd和.pyx文件,运行过程总报错,希望大神指点,调试前该做哪些工作呢?...

    报错内容如下: Traceback (most recent call last): File "E:\Python27\setup.py", line 16, in from s ...

  3. python的总结与心得词云设计理念_Python词云展示十九大报告

    "不忘初心,牢记使命,高举中国特色社会主义伟大旗帜,决胜全面建成小康社会,夺取新时代中国特色社会主义伟大胜利,为实现中华民族伟大复兴的中国梦不懈奋斗." 十九大召开已过去近一个月, ...

  4. python做的如何给别人用流量_Python告诉你:拿下60亿流量的《惊雷》都是哪些人在听?...

    原标题:Python告诉你:拿下60亿流量的<惊雷>都是哪些人在听? CDA数据分析师 出品 作者:Mika 数据:真达 后期:泽龙 [导语]:今天我们聊聊<惊雷>, Pyth ...

  5. python做excel多表按列合并_python如何实现excel多表合并(附代码)_后端开发

    php504错误怎么解决_后端开发 php504错误的解决方法:1.增加fastcgi进程响应的缓冲区大小:2.更改php环境配置,增加php-cgi进程处理脚本的超时时间:3.将php-fpm的处理 ...

  6. python做斐波那契数列通项公式_python实现斐波那契数列

    斐波那契数列:第0项是0,第1项是第一个1.这个数列从第3项开始,每一项都等于前两项之和.如下: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,3 ...

  7. python是一种蟒蛇使用的语言_python树莓派系列教程一:初识大蟒蛇 python(python语言环境搭建篇)...

    作者:剑若游龙微信公众号<科学是什么东东>,欢迎关注 作者微信号,欢迎与我交流 网络爬虫,人工智能,机器学习,如何让计算机理解能力更强,如 何让你手中的机器人更人性化,更聪明? 不管是大人 ...

  8. 420集的python教程下载_清华学霸录制 420集python视频教程给你拿去学!两个月让你变大神...

    Python已经成为一种再主流不过的编程语言了.它天生丽质,易于读写,非常实用,从而赢得广泛的群众基础,被誉为"宇宙最好的编程语言",被无数程序员热烈追捧. 随着时代的发展越来越快 ...

  9. python 多线程读写文件错误_python多线程老是报错。大神帮忙看看哈?

    以下是代码:importthreadingimporttimeproducts=[]condition=threading.Condition()classConsumer(threading.Thr ...

最新文章

  1. SAP CRM Fiori My appointment点了Edit按钮后的三个roundtrip详解
  2. mysql tdh_socket_thread_num_TDH_Socket的一些性能对比数据
  3. radio和文字无法对齐
  4. 100个数学家如何集体越狱??
  5. MySQL——JSON_REPLACE()函数修改JSON属性值
  6. Sql UNION 合并多个结果集并排序
  7. 程序员的基本功:为什么非要学Python数据分析?答案早就写在JD上了...
  8. 不属于python标准库的是_下列哪项不是Python标准库中处理到程序中参量的模块?...
  9. 米粒搜---团购信息搜索软件 Android平台
  10. 计算机网络原理——传输层TCP协议的十个重要特性之保证可靠性的机制(确认应答和超时重传)
  11. svn conflict linux,解决svn update 产生Node remains in conflict的问题
  12. 剑指 Offer(C++版本)系列:剑指 Offer 10- I 斐波那契数列
  13. 【树莓派】基于树莓派的语音机器人
  14. Web前端开发需要学习哪些知识
  15. 美国L1签证申请的常见问题解析
  16. 5.22 综合案例2.0-4G远程遥控车DEMO(2.2版本接口有更新)
  17. python数据可视化项目设计-中国人口
  18. MySQL-数字格式化
  19. 匈牙利算法以及在分配问题中的使用
  20. [ 渗透测试面试篇 ] 渗透测试面试题大集合(详解)(六)文件包含相关面试题

热门文章

  1. 《庄子·外篇·田子方第二十一》
  2. 2020-09-08
  3. ElasticSearch底层Lucene的执行流程与细节
  4. python报错:Python 2.7 will reach the end of its life on January 1st, 2020.
  5. python调试 设置断点
  6. 解决mysql 找不到 my.ini文件的问题
  7. git的使用推送代码到华为云、码云gitee、github
  8. 聊聊运营活动的设计与实现逻辑
  9. 修改element-ui中时间选择器的样式
  10. vue使用element-ui的el-date-picker设置样式无效