例:编写程序求出13的13次方的最后三位数。
首先分析题意,我们可以定义两个变量用于存储次方底数和指数,再用一个for循环对底数进行指数次的自乘,最后截取最后三位数即可。然而这种方式却行不通,因为计算机的整数的表示范围有限(GCC编译器中int型为4个字节,范围为-2147483647~2147483648),故不能用13去进行13次自乘。
解决方法:乘法规律中,乘积的最后几位的值仅仅跟乘数和被乘数的最后几位数字有关,而与其他位无关,利用这一规律可以求得结果。
代码:
程序运行结果: