数学中国

 找回密码
 注册
搜索
热搜: 活动 交友 discuz
查看: 5617|回复: 12

[求助]大整数的整除及求余法是否有问题

[复制链接]
发表于 2011-2-12 19:15 | 显示全部楼层 |阅读模式
[这个贴子最后由ysr在 2011/02/17 11:37am 第 2 次编辑]

如下方法是否可编称?有无数学问题?
1,除数位数小于计算机处理位数的情况
除法是乘法的逆运算,把被除数和除数分段再从高位到低位依次分别相除,把商的整数部分错位相加,每次余数与下一段并在一起再与除数下一段相除,最后一段的余数就是总余数,公式:M/A=(M1+M2+M3+……)/A+,求余数为,最后一项的余数就是总余数,Yn=Y(n-1)+Mn-A其中n-1为下角码.距离;举例:
232425/26=8939,2324/26=89,余10,1025/26=39,余11,商错位加8900+39=8939,余数232425-26*8939=11,余数相同.
2,被除数和除数位数都大的情况
分段依次相减,商错位相加,补零,补够段位,公式:
M/A=M1/A1(设其整数值为S)+Y1+M2-SA2+Y2+M3-SA3+……+Yn+M(n+1)-S1A1+Y(n+1)+M(n+2)-S1A2+……余数为最后一项的余数与剩余被除数段并起来的值,
若某项余数为负,则余数加该除数段,直到变成正数,加了M次则商为(S+M)/2,赋值给S,即S=(S+M)/2,返回最高位,从头再依次减,(这点易证:设S新=S-X,则必有S新=M+X,所以2S新=S+M)从头再依次减……直到被除数所剩段位小于或等于除数段位,不能再减,此时,余数与被除数剩余段位并一起为总余数,商值错位加补零,即为最后商。若最高被除数位段小于除数,则两段除以一段。
举例754699/1999=377,余数1076,75/19=3,余18,1846-3*99=1549,一次商为300,1549/19=81,余7,799-81*99=-7220,
7220/99=72,则商为(81+73)/2=77,余1549-77*19=86,8699-77*99=1076,最后余1076,商错位加300+77=377
[br][br][color=#990000]-=-=-=-=- 以下内容由 ysr 时添加 -=-=-=-=-
[br][br][color=#990000]-=-=-=-=- 以下内容由 ysr 时添加 -=-=-=-=-
当余数位数超过1段时可能遇到借位问题,高位段00000的借位处理为此分段位数每段小于等于计算机处理位数的1/3)
原则是在余数的高位段末尾减1变为字符串,具体方法是当余数位数超过1个段位时,高位预留借位值1,将高位段末尾减1,当字符串保留,段位做标记如D=2等,低位段参加下级运算,若下级余数为负,则加100……(两个段位的0)变为正值,高位末尾减1变为字符不动,低位参加下级运算,
若下级余数为正,看次高位无数字补上1个段位的9,有数字则减1,变字符串,低位参加下级运算,
依次下去负正都这样处理,最后把余数字符串处理一下,再和下面的计算,处理方法是,从倒数2段始,高位段末尾加1,和超过的位不能进位,如99999+1=00000,即和取末尾1段位,所得字符和低位并一起,注意顺序,高低位不要乱,至标记段止,得到新字符串,在做下面计算,长数据手工算慢,举例略
[br][br][color=#990000]-=-=-=-=- 以下内容由 ysr 时添加 -=-=-=-=-
以上为10进制的,2进制的可这样:当余数位数超过1段时可能遇到借位问题,高位段00000的借位处理,高位段00000借1后则变为11111(1个段位的1),低位段参加下级运算,若下级余数为负,则加100……(两个段位的0)变为正值,高位末尾减1变为字符不动,低位参加下级运算,
若下级余数为正,看次高位无数字补上1个段位的1,有数字则减1,变字符串,低位参加下级运算,
依次下去负正都这样处理,最后把余数字符串处理一下,再和下面的计算,处理方法是,从倒数2段始,高位段末尾加1,和超过的位不能进位,如11111+1=00000,即和取末尾1个段位,所得数可转化成10进制字符和低位并一起,注意顺序,高低位不要乱,至标记段止,得到新字符串,在做下面计算

大整数的乘除开平方运算,分段位数是,每段小于等于计算机处理位数的1/3,开平方每段必须是偶数位数,加减运算段位位数可以是小于等于计算机处理位数的1/2,这样不会溢出。
 楼主| 发表于 2011-2-14 09:38 | 显示全部楼层

[求助]大整数的整除及求余法是否有问题

欢迎批评 指导!探讨 沟通!
 楼主| 发表于 2011-2-14 12:00 | 显示全部楼层

[求助]大整数的整除及求余法是否有问题

大整数的乘除开平方运算,分段位数是,每段小于等于计算机处理位数的1/3,开平方每段必须是偶数位数,加减运算段位位数可以是小于等于计算机处理位数的1/2,这样不会溢出。
祝愿朋友情人节快乐!
 楼主| 发表于 2011-2-15 15:50 | 显示全部楼层

[求助]大整数的整除及求余法是否有问题

不懂电脑,是否可以用于编称,希望高手指导!
 楼主| 发表于 2011-2-17 11:39 | 显示全部楼层

[求助]大整数的整除及求余法是否有问题

顶一下,是否可以用于编称,希望高手指导!
 楼主| 发表于 2011-2-18 13:29 | 显示全部楼层

[求助]大整数的整除及求余法是否有问题

欢迎同道探讨 沟通 批评 指正!
 楼主| 发表于 2011-2-26 14:57 | 显示全部楼层

[求助]大整数的整除及求余法是否有问题

欢迎指点
朋友,我们相伴走过夏秋冬,春天来临,一起迎接,山青水绿花盛开,芽发草长天放晴

 楼主| 发表于 2011-2-27 18:13 | 显示全部楼层

[求助]大整数的整除及求余法是否有问题

都是高手,希望俺的题也与沟通指导,谢谢!
 楼主| 发表于 2011-4-28 12:40 | 显示全部楼层

[求助]大整数的整除及求余法是否有问题

补充1点:
一次商S的算法为,被除数的最高位2段(当小于除数时用3段)除以除数2段。
举例:1234567/151=8175余142,分段1 23 45/1 51=81余114,除数段位用完1次商为8100,11467/151=75余142,则商为8100+75=8175,余142。
1234567/15123=81余9604,12345/151=81余114,11467-81*23=11467-1863=9604大于0,除数段完,商为81,余9604已不够3段。
希望朋友赐教!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
 楼主| 发表于 2011-4-29 14:21 | 显示全部楼层

[求助]大整数的整除及求余法是否有问题

我的问题希望朋友探讨,顶一下!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|数学中国 ( 京ICP备05040119号 )

GMT+8, 2025-7-26 08:40 , Processed in 0.105621 second(s), 16 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表