Python编程算法【二十七】高次方数的尾数
【案例内容】
求13的13次方(即13 x 13 x 13 x ... x 13,连乘13次)的最后三位数。
【解题思路】
通过手动计算可知,乘积的最后三位的数值,只与乘数的后三位有关,与乘数的其他位数无关。根据这一规律,我们只需用之前一次的乘积的后三位与13相乘即可,比如2197 x 13,只需要求197 x 13即可,再把求出来的数的最后三位数,继续与13相乘,直到乘满13次为止。要拿到最后三位,只要用该数对1000取模就可以了。
【Python代码】

一般初学者会按照题意,连续乘13次的13,然后再找出最后三位数。但是计算机存储的整数是有一定范围的,超出范围将不能正确的表示,所以用这种方法不可能得不到正确的结果。因此我们一开始连乘几次13后,要找出其中的规律,再根据规律编程求解,问题便迎刃而解。