//精度问题!
/*
==================================================================
题目:
求整数的任意次方最后三位数!347的72次方最后三位数是241.
==================================================================
*/
#include<stdio.h>
#include<iomanip>
main()
{
int x,y,p,n;
printf("说明:底数为x,幂为y,请输入:\n");
printf("x=");
scanf("%d",&x);
printf("y=");
scanf("%d",&y);
p=1;
for(n=1;n<=y;n++)
{
p=p*x%1000; //关键是掌握这句话的意思,最后三位永远只与其乘数的最后三位相关,故只保留最后三位,以免溢出!
printf("%3d: p=%3d \n",n,p);//若不需要输出过程,则不需要此行代码
}
printf("%d的%d次方的最后三位是:%3d\n",x,y,p);
}
/*
====================================================================
评:
还是随机数的应用,只不过这里是用来处理比较长的数,计算机会用这种办法
自己处理精度!就是每次只保留精度相关的部分。
=====================================================================
*/
版权声明:本文为博主原创文章,未经博主允许不得转载。
时间: 2024-10-11 04:51:03