如何进行快速求解大数是否是11的倍数证明(如果奇数位数字和与偶数位数字和的差是11的倍数,则这个数是11的倍数)

当一个数的奇数位上数字和与偶数位上数字和的差是11的倍数时,这个数就是11的倍数。这个性质可以通过数学归纳法和模运算的性质来证明。

观察模运算的性质

首先,观察到对于任意正整数 k,10^k 对 11 取模的结果是循环的:
1 0 0 ≡ 1 ( m o d 11 ) 1 0 1 ≡ − 1 ( m o d 11 ) 1 0 2 ≡ 1 ( m o d 11 ) 1 0 3 ≡ − 1 ( m o d 11 ) ⋮ \begin{align*} 10^0 & \equiv 1 \pmod{11}\\ 10^1 & \equiv -1 \pmod{11}\\ 10^2 & \equiv 1 \pmod{11}\\ 10^3 & \equiv -1 (mod 11)\\ &\vdots \end{align*} 1001011021031(mod11)1(mod11)1(mod11)1(mod11)
即奇数次幂对 11 取模得到 1,偶数次幂对 11 取模得到 -1。

数位表示与模运算

考虑一个 n n n 位数,其中 a i a_i ai N N N 的各位数字,n 是数字的位数。
N = a n ∗ 1 0 n − 1 + a n − 1 ∗ 1 0 n − 2 + ⋯ + a 2 ∗ 10 1 + a 1 ∗ 1 0 0 N = a_n * 10^{n-1} + a_{n-1} * 10^{n-2} + ⋯ + a_2 * {10}^1 + a_1*10^0 N=an10n1+an110n2++a2101+a1100
根据模运算的性质,有:

  1. 如果一个数位在奇数位置(即 1 0 k 10^k 10k 的幂次是奇数),则其贡献为 a i ∗ 1 0 i − 1 ≡ a i ( m o d 11 ) a_i * 10^{i-1} ≡ a_i (mod {11}) ai10i1ai(mod11)
  2. 如果一个数位在偶数位置(即 1 0 k 10^k 10k 的幂次是偶数),则其贡献为 a i ∗ 1 0 i − 1 ) ≡ − a i ( m o d 11 ) a_i * 10^{i-1)}≡ -a_i (mod 11) ai10i1)ai(mod11)

推导差的表达式

将所有位的贡献累加起来,可以得到:
N ≡ ( a n + a n − 2 + ⋯ + a 2 + a 0 ) − ( a n − 1 + a n − 3 + ⋯ + a 1 ) ( m o d 11 ) ≡ ( a n − a n − 1 + a n − 2 − ⋯ + ( − 1 ) n − 1 a 1 ) ( m o d 11 ) \begin{align*} N & \equiv (a_n + a_{n-2} + ⋯ + a_2 + a_0) - (a_{n-1} + a_{n-3} + ⋯ + a_1) (mod 11)\\ & \equiv (a_n - a_{n-1} + a_{n-2} - ⋯ + (-1)^{n-1}a_1) (mod 11)\\ \end{align*} N(an+an2++a2+a0)(an1+an3++a1)(mod11)(anan1+an2+(1)n1a1)(mod11)

结论

如果一个数的奇数位数字和与偶数位数字和的差是11的倍数,即 N ≡ 0 ( m o d 11 ) N ≡ 0 (mod 11) N0(mod11),那么根据模运算的性质,这个数就是11的倍数。

因此,当一个数的奇数位数字和与偶数位数字和的差是11的倍数时,这个数就是11的倍数。

最近更新

  1. TCP协议是安全的吗?

    2024-04-07 01:38:04       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-07 01:38:04       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-07 01:38:04       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-07 01:38:04       20 阅读

热门阅读

  1. [深度学习]yolox训练参数含义

    2024-04-07 01:38:04       22 阅读
  2. LeetCode //C - 278. First Bad Version

    2024-04-07 01:38:04       17 阅读
  3. C++ vector

    2024-04-07 01:38:04       16 阅读
  4. UD浏览器多线程支持的设置

    2024-04-07 01:38:04       15 阅读
  5. vuex和pinia

    2024-04-07 01:38:04       19 阅读
  6. OpenJudge - 22:紧急措施

    2024-04-07 01:38:04       21 阅读
  7. 对钱的认知篇-一个人有三个钱包

    2024-04-07 01:38:04       28 阅读
  8. 【TypeScript系列】tsconfig.json

    2024-04-07 01:38:04       49 阅读
  9. flex:1的作用是什么?

    2024-04-07 01:38:04       12 阅读
  10. Linux大文件分割小文件

    2024-04-07 01:38:04       16 阅读
  11. Linux C指针以及指针在Linux内核中的应用

    2024-04-07 01:38:04       16 阅读