如何快速判断一个整数是否可以整除另一个整数的理论分析

 
 
如何快速判断一个整数是否可以整除另一个整数的理论分析
 
    可能大家在小数初中的时候都知道一些快速判断一个数能被特殊的数整除的方法,如:
如果一个数的所有数字之和能被3整除,则这个数能被3整除;
如果一个数的个位为05,则这个数能被5整除;
如果一个数的所有数字之和能被9整除,则这个数能被9整除;
如果一个数所有奇数位的数字相加减去所有偶数位的数字后的值能被11整除,那么这个数能被11整除;
.....
但是如何快速判断一个数能被7整除呢?本文进行了被整除的理论深入分析。
 
xm是一个自然数:
x=xn …. x3 x2 x1
 
x1x的个位, x2x的十位, x3x的百位, xnxN
 
x=2368,则x1=8,x2=6,x3=3,x4=2
 
则有如下公式:
x%m=( x1 +101%m*x2+102%m*x3+……+10n-1%m*xn)%m
 
其中%表示求余数的符号
 
公式证明
依据余数的两个定理
(m+n)%k=(m%k+n%k)%k(结合率)
 
(m*n)%k=((m%k)*n)%k (交换率)
 
x%m
= (x1 + x2*10 + x3*102 +xn*10n-1)%m
 
= (x1%m+ x2*10%m+ x3*102%m +xn*10n-1%m)%m
 
= (x1%m+ (10%m*x2)%m + (102%m*x3)%m +(10n-1%m*xn)%m)%m
 
= (x1 + 10%m*x2+ 102%m*x3 +10n-1%m*xn)%m
 
所以公式得证
 
举例:
如果一个数的所有数字之和能被3整除,则这个数能被3整除
10%3=1,100%3=1,1000%3=1.....10n%3=1
x%3=(x1 + x2+ x3 +......+xn)%3
 
如果一个数的个位数能被5整除,则这个数能被5整除,也就是说个位为05的数都能被 5整除
 
10%5=0,100%5=0,1000%5=0.....10n%5=0
x%5=x1%5
 
如果一个数的个位数加10位数的2倍加上百位数的4倍能被8整除,则这个数能被8整除
 
10%8=2,100%8=4,1000%8=0.....10n%8=0
x%8=(x1 + 2x2+ 4x3)%8
 
如果一个数的所有数字之和能被9整除,则这个数能被9整除
10%9=1,100%9=1,1000%9=1.....10n%9=1
x%9=(x1 + x2+ x3 +......+xn)%9
 
 
对于7这个数比较麻烦,用语言不好直接描述了,大家看公式就知道了
10 %7=3,102%7=2,103%7=6,104%7=4,105%7=5,106%7=1,
107%7=3,108%7=2.....
 
x%7=(x1 + 3x2+ 2x3+ 6x4+ 4x5+ 5x6+ x7+......)%7
也可写为
x%7= (x1 + 3x2+ 2x3 - x4 - 3x5 - 2x6+ x7+......)%7
例:
567%7=(7+3*6+2*5)%7=(7+18+10)%7=35%7=0
所以567%7=0
 
如果一个数所有奇数位的数字相加减去所有偶数位的数字后的值能被11整除,那么这个数能被11整除
 
10 %11=10,102%11=1,103%11=10,104%11=1.....
x%11=(x1 + 10x2+ x3+ 10x4+ x5+ 10x6+ x7+......)%11
x%11=(x1 - x2+ x3 - x4+ x5 - x6+ x7+......)%11
 
715%11=(7-1+5)%11=11%11=0
3454%11=(3-4+5-4)%11=0%11=0
 
再举一个特殊的数37
公式也不好用语言描述,但是公式比较简单
 
10 %37=10,102%37=26,103%37=1,
104%37=10,105%37=26,106%37=1
107%37=10,108%37=26,109%37=1.....
 
x%37=(x1 + 10x2+ 26x3+ x4+ 10x5+ 26x6+ x7+......)%37
x%37=(x1 + 10x2 - 11x3+ x4+ 10x5 - 11x6+ x7+......)%37
 
2368%37=(8+6*10-3*11+2)%37=37%37=0
 
 
叶正盛(MKing)
2008-05-07
  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值