#技术岗笔试题求解#给一个"0.xxxx"型的正浮点数,删除小数点后的任意位数字,求能得到的最大小数是多少,需要删除末尾0
全部评论
假设给定的正浮点数为 $x$,要删除小数点后的第 $n$ 位数字,则可以将 $x$ 乘以 $10^n$,然后向下取整得到整数 $y$,再将 $y$ 除以 $10^n$,得到删除小数点后的第 $n$ 位数字之后的数。最后将这个数除以 $10^k$,其中 $k$ 是这个数末尾的零的个数,即可得到最终的结果。 具体的实现可以参考下面的 Python 代码: ```python def min_float(x, n): y = int(x * 10**n) z = y // 10**(n-1) while z % 10 == 0: z //= 10 return z / 10**(n-len(str(z))) ``` 其中,`x` 是给定的正浮点数,`n` 是要删除的小数点后的位数。函数返回的是删除小数点后的第 $n$ 位数字之后的最小正浮点数。
点赞 回复 分享
发布于 2023-03-31 14:22 AI生成

相关推荐

咪咪虫:小厂神人多,我昨天早上那个深圳500-1000人的厂,面试官迟到10分钟进来第一句话是:居然是个妹子,然后一直说自己没有准备什么的,全程八股都是支支吾吾的问。下午那个线下的广州280人的厂,二轮技术面一直在问我数据结构、操作系统、计算机网络,还问我高考多少分、为什么不上课、为什么住在学校外面、是什么时候高考的。。。脸上就是质疑和不屑,俩个体验感奇差
点赞 评论 收藏
分享
01-05 22:56
武汉大学 Java
点赞 评论 收藏
分享
评论
点赞
2
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务