分析在一个等式成立时,使用的是几进制的最简方法

来源:互联网 发布:instasize 相机软件 编辑:程序博客网 时间:2024/04/28 13:00

     在学习进制的时候,我相信大家都会经常遇到这种问题,假如一个等式成立,那这种编译器中使用的是几进制,这种题我们一般的做法都是一个一个的去试,试到哪个就是哪个,这样的办法虽然实用,但是太浪费时间了,遇到简单的数字还好,如果遇到的是一个很大的数字,那计算量就很大了。在这里,我学习到了一个较为简单的方法,来解决这种问题,也写出来和大家分享分享。以这个等式为例:15*4=112,那么我们先可以看出15乘以4的个位数字,很容易可以得出是20,然后在选项中有6、7、8和9四个数字,我们先来看第一个数字6,用20除以6得到余数2,然后再看等号右边的数字的个位,发现也是2,因此就是六进制。为了以防万一,我们也可以用这种方法来试试其它选项,最终确定答案。但是凡事也有例外,有时候用这种方法并不能解决问题。以下是阿里哪一年的笔试题,这道题也印证了阿里的确是阿里的道理。

假设在n进制下,下面的等式成立,567*456=150216,n的值是()

A.9   B.10   C.12   D.18  

这道题用我以上的方法做的话,你会发现只能排除B选项,其实这也是白费功夫,两个数字相乘个位是2,然后一看后面的答案就不是。那既然那一套不管用了,那我们就用另一个办法:先把n进制下的数字写出来,得出的结果是:(5n^2+6n+7)*(4n^2+5n+6)=20n^4+49n^3+88n^2+71n+42=n^5+5n^4+2n^2+n+6,然后两边同时对n取余,得到 42%n == 6,这时得到第一个表达式,然后再对两边先除以n再对n取余  (71+42/n) %n ==(1+6/n) %n ==1   此时得到第二个表达式  (71+42/n) %n == 1,然后把选项代进去,一一试过后得到答案是选项D,18进制。这道题应该是本类题目的最高境界了。

    以上就是我今天对这种题目的一些简单的理解。

阅读全文
0 0
原创粉丝点击