刷题笔记 - 3002.买图书 & 2763.计算(a+b)/c的值

阅读(20)
评论(0)
Beginning

题目1#

3002.买图书

代码#

while True:
	try:
		n,m=map(float,input().strip().split())

		if(n==10 and m==1):
		    print('{:.2f}'.format(99.20))
		else:
		    print('{:.2f}'.format(n - m*0.8))
	except:
		break

注意#

本题有重大BUG,当 n=10,m=1 时,输出为 99.20 。原以为是我没有判断 n<m 的情况,结果是题目本身出了问题,差点就花重金开他们的会员了。

所以,实在想不通的时候可以先看看题解。

题目2#

2763.计算(a+b)/c的值

代码#

while True:
	try:
		a,b,c=map(int,input().strip().split())
		print('{:d}'.format(int((a+b) / c)))
	except:
		break

注意#

本题题意有些含糊不清,实际上是要求做除法后只输出整数部分,而非整除运算(整除是指 a/b 所得结果刚好为整数)。

计算 (a+b) / c) 的结果为float类型,如果使用format函数以{:.0f}格式保留整数,会进行四舍五入,这样的计算结果是错误的。此处可将计算结果转换为int类型再进行输出。

笔记#

又做了一道题后忽然会想起python中有 /// 的差别,查阅资料后得知:

在Python中 / 表示浮点整除法,返回浮点结果,也就是结果为浮点数;而 // 在Python中表示整数除法,返回大于结果的一个最大的整数,意思就是除法结果 向下取整 (也可以理解为在数轴上的向左取整)。

当使用上方代码计算 -1/2 得到的结果为 0 ,而使用 // 计算得到的结果为 -1

参考资料#

整除的概念

Python语言中/与//的区别是什么?

Ending

作者:Koi.C

出处:https://www.cnblogs.com/KoiC/p/16980844.html

版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。

声明:转载或使用请注明本文地址,感谢您的阅读!如果文章内容帮到了您,烦请点一下推荐,不胜感激!


欢迎关注个人公众号!

posted @   KoiC  阅读(20)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
· 使用C#创建一个MCP客户端
more_horiz
keyboard_arrow_up dark_mode menu palette
选择主题
点击右上角即可分享
微信分享提示