码迷,mamicode.com
首页 > 其他好文 > 详细

平方数的口算或巧算

时间:2015-08-29 21:27:01      阅读:647      评论:0      收藏:0      [点我收藏+]

标签:

  

  看到电视里讲 999*999 的口算方法: 先去掉一个 9 , 得到 99, 然后后面写个8, 然后 8 前面有几个 9, 后面就写几个 0, 最后加个1, 得到 998001. 敏感的我一看就其中肯定是从计算法则中挖掘的规律。而且没有这么复杂。请看

  999*999 =(1000-1)^2 = 1000*1000 - 2*1000 + 1 = (1000-2) * 1000 + 1*1 

      因此更简单的口诀是: 前面写个 998, 后面写个 001. 前面有几个数, 后面就有几个数。

 

  不信, 你算算, 9999999*9999999 = 99999980000001   

  依次类推, 9997 × 9997 = 99940009

        9988 × 9988 = 99760144

 

  你找到口诀了吗? 99XX 距离 10000 假设是 N , 那么 最终的得数是 (99XX-N)【前半部分】(N×N)【后半部分】。 其中前后部分的数位相同。 因此, 会出现“数越大反而越好算”的“奇怪”规律。 

 

  同理, 可以计算 99966 × 99966 = 9993201156 其中 99932 = 99966 - (100000-99966) ,  1156 = 34*34

 

  计算原理: 99XX * 99XX= (10000 - N) ^2 = (N-10000)^2 = (10000-2N)×10000 + N*N = ((10000-N)-N)*10000+N*N

  注意到 只要9的数目大于或等于非9的数目,就可以使用这个方法快速计算出平方数

 

  这样, 你就可以将高位数的平方转化为低位数的平方。对于高位数来说, 你所需要的只是加减法和保持数位相同。

 

       对于两位数的平方, 上面的规律依然适用。 比如 86*86 = [86-14]00 + 14*14 = 7396 这样的话,需要熟悉低位数的平方。

       1.  首先, 个位数为5的平方非常好算。 低两位总是25, 高两位是十位数×(十位数+1)

     比如, 45*45 = (4*5)25 = 2025, 65*65 = (6*7)25=4225 

            

            计算原理: (A*10 + 5)^2 = A*A*100 + 100A + 25 = A(A+1)*100 + 25

 

      2.   其次, 可以通过容易计算的数的平方来推导所要计算的数的平方:  a*a  = b*b +  (a+b)(a-b)       

                         相邻的两个数的平方之差等于两个数的和:  (A*10+B+1)^2 - (A*10+B)^2 = (A*10+B)(A*10+B+1)

 

         11*11 = 121,  12*12 = 144, 13*13 = 169 , 14*14 = 169 + (13+14) = 196 , 15*15 = 225, 16*16 = 225 + 31 = 256 

           据此,可以推导任意数的平方, 只要能够对加减法快速口算。

 

          (A*10+B)^2 - (A*10+D)^2 = [((A*10+B) + (A*10+D) ] * (B-D)

              34*34 = 30*30 + 4*64 = 1156  或者 34*34 = 35*35 - (34+35) = 1225 - 69 = 1156

              78*78 = 75*75 + 3*153 = 5625 + 459 = 6084 或者 78*78 = 6400 - 2*158 = 6084

 

     离5比较近的就使用X5作为临近数,离0比较近的就使用X0作为临近数。

 

           两位数的平方还有一种奇淫巧计(需要三位数加法快速口算):

    78 * 78 = (7*7)(8*8) + 2*7*8*10 = 4964 + 1120 = 6084 = (496+112)*10 + 4

?    67*67 = 3649 + 840 = 4489 = (364+84)*10 + 9    

 

           计算原理: (A*10+B)*(A*10+B) = (A*A*100 + B*B) + 20AB = [A*A][B*B] + 20AB 

                       = 10*[10A*A+(B*B-x)/10 + 2AB] + x

                                   x 是 B*B 的个位数。        

 

              这样, 就解决了两位数平方的口算或巧算问题。

 

    三位数的平方(高位数加法+两位数平方): 

    (100A+10B+C)^2 = 100*(10A+B)^2 + (10B+C)^2 + (2AC-B*B)*100

             764*764 = 76*76 *100 + 64*64 + (56-36)*100 = 577600 + 4096 + 2000 = 583696

 

             总之, 任何口算或巧算, 其实都有一个计算公式在后面支撑。 而这个计算公式无非是将各个计算项进行重组, 使得更容易口算或巧算得到数位的数字。             

 

平方数的口算或巧算

标签:

原文地址:http://www.cnblogs.com/lovesqcc/p/4769773.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!