作者gofin (云色)
看板Visual_Basic
标题Re: [VB6 ] Q10083: Division
时间Wed Nov 26 10:03:43 2008
→ tomas0011:如果 分子除分母为整数也就是整除!分母则为分子的因数 11/25 22:57
→ tomas0011:问题就来了!要如何把分母(大数)分割 成较小的因数 11/25 22:58
→ tomas0011:而每次除分母因数时判断分子是否变为小数 即为不整除^^? 11/25 22:59
→ tomas0011:可是若途中遇到了超过可以用 "除法直接除的(分母)质数" 11/25 23:01
→ tomas0011:题目又会产生bug罗 !! 好难ˊˋˊˋˊˋˊˋ 11/25 23:01
续之前t^(a-b)找出可能的值
再把这些值丢进(t^a)-1/(t^b)-1
分别算出分子跟分母的数字(这里可能需要大数相乘)
如果说有个函数是可以分解一个数字的因式
EX:输入25会输出5^2 或输入75会输出5^2*3^1
这样就把分子跟分母切开送进去.....
然後先比较
if 分子的底数是否包含全部分母的底数
if 这些相同底数的分子指数都大於分母指数
如果有的话(应该就会整除) 就算一算输出答案
(怎算就是 假设a,b都是分子跟分母都有的底数,c^e,d^f是分子多的
=a^(分子指数减分母指数)*b^(分子指数减分母指数)*c^e*d^f
P.S到这其实只是一串底数跟指数的组合,如果需要输出确切的数字就用大数
相乘算出来吧,,,,但是我倒觉得算到这边应该就差不多了!
else
分子指数减分母指数会等於负的
=没办法整除
end if
else
=没办法整除
end if
参考看看
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.124.126.128
1F:推 tomas0011:逻辑正确 只是...好像还是不可行ˊˋ" 11/26 12:42