作者lemilktea (那杯奶茶)
看板Programming
标题Re: [请益] 这个情境可以运用程式或excel公式解决吗
时间Thu Sep 30 13:08:46 2021
※ 引述《NTUCat (台大小鲁猫~)》之铭言:
: 各位大神好
: 文组废物小妹我最近遇到一个问题
: 就是我有一大串的数字
: 它们的小数点後都很多位
: 我想知道这堆数字 个别乘以1-200以内的什麽整数
: 会得到尾数最大(最趋近.99999)的数字
: 举例来说,1.107225 乘以9会是9.965025
: 我是用1除以尾数得到9
: 再用9来验证
: 看起来很接近了
: 但我再拿另一个数字1.0773来实验
: 1/0.0773=12.93多
: 1.0773x12=12.9276
: 1.0773x13=14.0多
: 到这里乍看觉得12就是答案
: 但再乱试一下就发现
: 1.0773x194=208.9962
: 更接近.9999
: 再拿0.21546来试试看
: 1/0.21546=4.64多
: 0.21546*4=0.86184
: 0.21546*5=1.0773
: 这样看起来4会是答案
: 可是
: 0.21546 乘以190是40.9374
: 乘以167是35.98182
: 这两个结果的尾数又更接近.9999
: 所以可知我用1除以尾数是作法不正确
: 但我想不到其他解法
: 不晓得这有没有可能用公式或程式解决呢?
: 感谢各位的阅读
: 因为算到头昏了
: 如果描述不清楚请见谅
: 希望不要鞭太大力
我写了一个 Apps Script 范例给你参考
https://docs.google.com/spreadsheets/d/1pmfttpMVQQWQOkuz_4sz6fXT16sX9UxOmmFrhR
yPCEE/edit?usp=drivesdk
(选择 工具-巨集-点击 myFunction)
可能有更好的做法,但暴力一点的就是
例如说用 Excel
Step 1.
N = 你的数字
N x 1
N x 2
N x 3
N x ...
Step 2.
然後把结果的整数都去掉 (字串切割也行)
Step 3.
找到最大值,对应的index就是你要的整数
Result:
1.0773 的答案为 194
0.21546 的答案为 181
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 61.219.10.217 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Programming/M.1632978529.A.766.html
1F:推 Richun: 整数去掉後直接拿最大值就可以了118.169.3.129 10/01 11:47
2F:→ lemilktea: 感谢 已修正27.240.217.188 10/01 12:33
※ 编辑: lemilktea (27.240.217.188 台湾), 10/01/2021 12:34:52
3F:推 NTUCat: 网址打不开><(我有把跑到下一行的yP贴上但114.45.19.201 10/02 06:48
4F:→ NTUCat: 还是写找不到QQ114.45.19.201 10/02 06:48
5F:→ lemilktea: 我修改了你看看36.229.1.210 10/02 13:09
※ 编辑: lemilktea (36.229.1.210 台湾), 10/02/2021 13:09:41