回复 10# 的帖子
这是因为你的 HugeCalc 没得到许可认证。解决方案有:(请先到我的网站下载最新的HugeCalc完全版本)
[*]通过 HugeCalc.chm 提供的各种途径正常注册
[*]积分满100的会员可免费获得 HugeCalc 的最新版注册码
[*]临时方案:新建一子目录“CopyrightByGuoXianqiang”,将程序移动到该目录下运行即可 我感觉现在的注册码验证方式有一个问题,
假设我现在想在开发的软件中使用HugeCalc,我也获得了注册码,所以在我自己的机器上运行没有任何问题,但是如果我要发布这个软件给大家用,那么就必须让每个使用这个软件的人都获得HugeCalc的注册码才行。
所以在这种方案下,不会有人愿意将HugeCalc运用在自己开发的软件中,而只能用来做些研究性工作 所以,我特设了“客户定制”HC_LICENSE_CUSTOM 这一项。
(已有人曾用 HugeCalc 开发自己的加解密程序分发给客户)。
造成这个现状的原因主要为:[*]DLL 无法提供仅编译链接期间的身份验证(而运行期则无须验证)功能
[*]国内的盗版太严重,如果一旦放出可将 LICENSE 自动传播给第三方的注册码,那么肯定很快就可以 Google 到:( 的确如此。盗版已经严重影响到国内软件业的发展了。 To kofeffect,
你的积分已经达到100了,可以向郭老大申请系列号了 错了,积分还没达到,还差些,不过也快乐(达到的是经验)。 再转回到主题。
因为 3^n 有 (ln(3)/ln(2))*n ≈ 1.58*n bits,
所以将 3^n 看成 2n bits 的数,其前 n bits 的位“值”将近半为“0”
在程序设计上还可略微加速,省掉一次大数加法运算,方法为:
当 3^n 拆分成两部分后,若每部分的“bits”均小于等于 n-1 (其实仅判断其后半部即可),则肯定“pass”! 准确的说是
3^n看成2n比特的数,前面有(2-log(3)/log(2))*n大概为0.42n比特为0,
所以如果3^n的后n比特最前面连续1的数目小于0.42n-1,那么结果肯定pass
其实我一直再考虑一个问题,就是
是否可以证明对于充分大的n,有(-3n) (mod 2n)>=+1
如果这个结论成立,那么自然原不等式也没有问题。
郭老大能否改写一下程序,让程序从2开始检测到n,看看有多少个n不成立,是否只要稍微大一点的n都会成立 用计算来验证不等式有什么意义呢?
页:
1
[2]