欢迎光临散文网 会员登陆 & 注册

Python编程算法【二十七】高次方数的尾数

2022-11-26 09:32 作者:SPC编程爱好者  | 我要投稿

【案例内容】

求13的13次方(即13 x 13 x 13 x ... x 13,连乘13次)的最后三位数


【解题思路】

通过手动计算可知,乘积的最后三位的数值,只与乘数的后三位有关,与乘数的其他位数无关。根据这一规律,我们只需用之前一次的乘积的后三位与13相乘即可,比如2197 x 13,只需要求197 x 13即可,再把求出来的数的最后三位数,继续与13相乘,直到乘满13次为止。要拿到最后三位,只要用该数对1000取模就可以了


【Python代码】

连乘13次后的尾数是253

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

Python编程算法【二十七】高次方数的尾数的评论 (共 条)

分享到微博请遵守国家法律