冷眼看戏的Lili 发表于 2012-2-19 03:37:30

如何快速判断一个大整数能否被7整除

<br /="/"/><div>快速判断一个大整数能否被2整除或者被5整除的方法,小学生都知道。如何快速判断一个大整数能否被3整除或者被9整除,大多数中学生也都知道。那么,有没有一个不用除法的比较简单的办法来判断一个大整数能否被7整除?</div><div> </div><div>*受楼下回帖的启发(顺致谢意!),为使问题更明确,加一点解法约束:只用纸和笔,而不用别的设备。(4:03)</div><br /="/"/><br /="/"/> <span style="display:none;">www.ddhw.com</span><br /="/"/><br /="/"/> <p><div align="right"><font color="#ff0000" style="BACKGROUND-COLOR: #c4dfff">  本贴由[<b>冷眼看戏的Lili</b>]最后编辑于:2012-2-19 4:3:27  </font></div><div style="MARGIN-TOP:20px;MARGIN-LEFT:0;MARGIN-BOTTOM:0;float:left"></div></p>

fov22 发表于 2012-2-19 10:55:10

回复:如何快速判断一个大整数能否被7整除

<table cellpadding="8" height="100%" width="100%"><tr><td valign="top"><br /="/"/><div>当今21世纪电脑发达, 写个程序</div><div>while(n>=7)</div><div>{n=n-7;</div><div>}</div><div>if(n==0)</div><div>  cout<<"n is divisible by 7";</div><div>else</div><div> cout<<"n is not divisible by 7";</div><div>或者索性就用cmath里定义好的 r=n%7更加直接。</div><div>21世纪数学家们不玩数论啦! 死费那个脑筋应用价值不大,我这个解答更符合当今主流。</div><div> </div><div> </div><br /="/"/><br /="/"/> <div style="MARGIN-TOP:20px;MARGIN-LEFT:0;MARGIN-BOTTOM:0;float:left"></div></td></tr></table>

冷眼看戏的Lili 发表于 2012-2-19 11:29:46

回复:回复:如何快速判断一个大整数能否被7整除

<table cellpadding="8" height="100%" width="100%"><tr><td valign="top"><br /="/"/><div><strong>"21世纪数学家们不玩数论啦!"???----</strong> 那你怎么还把冰雹猜想拿出来?<img /="/" src="/img/8.gif"></img>出尔反尔,好像已经不是第一次了。</div><br /="/"/><br /="/"/> <span style="display:none;">www.ddhw.com</span><br /="/"/><br /="/"/> <p><div align="right"><font color="#ff0000" style="BACKGROUND-COLOR: #c4dfff">  本贴由[<b>冷眼看戏的Lili</b>]最后编辑于:2012-2-19 3:33:19  </font></div><div style="MARGIN-TOP:20px;MARGIN-LEFT:0;MARGIN-BOTTOM:0;float:left"></div></p></td></tr></table>

冷眼看戏的Lili 发表于 2012-2-19 11:44:17

回复:回复:如何快速判断一个大整数能否被7整除

<table cellpadding="8" height="100%" width="100%"><tr><td valign="top"><br /="/"/><div>二十一世纪的计算机工作者们还“<strong>玩</strong>”读磁带吗?每读取一个文件,都要按你“<strong>一个读文件的问题</strong>”里说的从头读起。“<strong>死费那个</strong>”功夫“<strong>应用价值不大</strong>”! 你为什么要把那样的题找(编?)出贴脑坛来呢?<img /="/" src="/img/20.gif"></img></div><br /="/"/><br /="/"/> <span style="display:none;">www.ddhw.com</span><br /="/"/><br /="/"/> <p><div align="right"><font color="#ff0000" style="BACKGROUND-COLOR: #c4dfff">  本贴由[<b>冷眼看戏的Lili</b>]最后编辑于:2012-2-19 3:56:11  </font></div><div style="MARGIN-TOP:20px;MARGIN-LEFT:0;MARGIN-BOTTOM:0;float:left"></div></p></td></tr></table>

NuBHH 发表于 2012-2-20 23:45:24

回复:回复:如何快速判断一个大整数能否被7整除

<table cellpadding="8" height="100%" width="100%"><tr><td valign="top"><br /="/"/><div>Fov22估计是学计算机的, 该发挥你的特长出点优化算法的题.</div><span style="display:none;">www.ddhw.com</span><br /="/"/><br /="/"/> <div style="MARGIN-TOP:20px;MARGIN-LEFT:0;MARGIN-BOTTOM:0;float:left"></div></td></tr></table>

NuBHH 发表于 2012-2-20 23:52:45

回复:回复:回复:如何快速判断一个大整数能否被7整除

<table cellpadding="8" height="100%" width="100%"><tr><td valign="top"><br /="/"/><div>计算机行业很多新的东西(进展)反而是再用了以前用过一段时间被抛弃的.比如说磁带的读取方法, 自从有了温盘(硬盘)读取技术, 这种顺序读取已经不用了. 但是出了SSD盘(更快的"硬盘")以后, 似乎(似乎哈, 我没具体检查过)SSD的读取技术是改良的磁带顺序读取.</div><span style="display:none;">www.ddhw.com</span><br /="/"/><br /="/"/> <div style="MARGIN-TOP:20px;MARGIN-LEFT:0;MARGIN-BOTTOM:0;float:left"></div></td></tr></table>

冷眼看戏的Lili 发表于 2012-2-22 10:30:18

有一个简捷的方法

<table cellpadding="8" height="100%" width="100%"><tr><td valign="top"><br /="/"/><div>有一个简捷的方法,不知道网上有没有介绍过。</div><div><br /="/"/>对任意给定的一个<em>n</em>位数,用 ......,-2,-3,-1,2,3,1,<strong>-2,-3,-1,2,3,1</strong> (六位往左循环的,不难记)的右端<em>n</em>个,与所给整数对应位相乘再加起来,得到一个绝对值小很多的整数(如有负号,扔掉),看这个数能否被7整除。继续用此法,直至得到一位数。若它是7,则原给整数能被7整除;否则,不能被7整除。</div><div> </div><div><strong>例如</strong>,给了86419746,取3,1,-2,-3,-1,2,3,1分别去乘86419746的各位,得24,6,-8,-3,-9,14,12,6。相加,其和为42。取3,1分别去乘4和2,把结果加起来,得14。然后再取3,1分别去乘1和4,把结果加起来,得7。所以,86419746能被7整除。</div><div><br /="/"/>如果你知道哪些两位数能被7整除,那么上面的过程还能减少几(至多三)步。</div><div> </div><span style="display:none;">www.ddhw.com</span><br /="/"/><br /="/"/> <div style="MARGIN-TOP:20px;MARGIN-LEFT:0;MARGIN-BOTTOM:0;float:left"></div></td></tr></table>

biomence 发表于 2012-3-25 17:23:07

86-419+746=413 413可以整除7

<table cellpadding="8" height="100%" width="100%"><tr><td valign="top"><br /="/"/>======<br /="/"/>http://vip.book.sina.com.cn/book/chapter_180006_135175.html<br /="/"/>这段是copy的<br /="/"/>把整数从右到左分段,每三个数为一节,再从右边数起按下面办法计算:<br /="/"/><br /="/"/>【第一节】-【第二节】+【第三节】-【第四节】+..【第N节】<br /="/"/><br /="/"/>计算所得的数,如果是7,11或13的倍数,原数就能被7,11或13整除<br /="/"/>=======<br /="/"/>86419746<br /="/"/><br /="/"/>86-419+746=413      413可以整除7 所以86419746可整除7<br /="/"/><span style="display:none;">www.ddhw.com</span><br /="/"/><br /="/"/> <p><div align="right"><font color="#ff0000" style="BACKGROUND-COLOR: #c4dfff">  本贴由[<b>biomence</b>]最后编辑于:2012-3-25 9:38:9  </font></div><div style="MARGIN-TOP:20px;MARGIN-LEFT:0;MARGIN-BOTTOM:0;float:left"></div></p></td></tr></table>
页: [1]
查看完整版本: 如何快速判断一个大整数能否被7整除