C语言:求高次方数的尾数
分析
许多初学者看到本题最容易想到的方法就是:将13累乘13次后截取最后三位即可。但是计算机中存储的整数有一定的范围,超出某范围将不能正确表示,所以用这种算法不可能得到正确的结果。实际上,题目仅要求后三位的值,完全没有必要把13的13次方完全求出来。
算法设计
手工计算13的13次方的步骤如下:
研究乘法的规律会发现:乘积的最后三位的值只与乘数和被乘数的后三位有关,与乘数和被乘数的高位无关。利用这一规律,在计算下一次的乘积时,我们只需用上次乘积的后三位来参与运算(即在求第三次乘积时,上次的乘积2197并不需要都参与运算,只取其后三位197再次与13相乘即可)。求某数的后三位的算法用某数对1000取模。
编程过程中,将累乘得到的积存储到变量last中,在进行下一次相乘之前先截取last的后三位再相乘,即:last%1000*13,将结果存储到last中:last=last*x(x的值为13)%1000。 因第一次相乘时用到变量last的初值,故在定义时给last赋初值,或在参与计算之前给last赋初值1。
下面是完整的代码:
- #include <stdio.h>
- int main()
- {
- int i, x, y, last=1; /*变量last保存求得的x的y次方的部分积的后三位*/
- printf("请输入x 和 y:\n");
- scanf("%d %d", &x, &y);
- for(i=1; i<=y; i++) /*x自乘的次数y*/
- last = last * x % 1000; /*将last乘x后对1000取模,即求积的后三位*/
- printf("高次方数的后三位为:%d\n", last);
- return 0;
- }
运行结果:
请输入 x 和 y:
13 13
高次方数的后三位为:253
C语言:求高次方数的尾数相关推荐
- Java高次方数尾数输出_C语言求高次方数的尾数代码解析
问题描述 求13的13次方的最后三位数. 问题分析 许多初学者看到本题最容易想到的方法就是:将13累乘13次后截取最后三位即可.但是计算机中存储的整数有一定的范围,超出某范围将不能正确表示,所以用这种 ...
- C语言每日一练——第79天:高次方数的尾数
C语言每日一练 2022年1月27日 文章目录 题目描述 问题分析 代码实现 运行结果 题目描述 求13的13次方的最后三位数 问题分析 根据乘法竖式计算我们可以发现,要得到乘法结果的后三位,只需要用 ...
- C语言求高次方的尾数
求13的13次方的的最后三位数 刚开始我想的是先存储值,后计算,但数据类型装不了那么大的数 所以利用循环,-> 任何三位及以上的数%1000都是取最后三位 研究乘法的规律会发现:乘积的最后三位的 ...
- 13的高次方数(C语言)
题目描述: 求13的n次方(12<n≤130000000000)的最后三位数.例如:13的13次方的最后三位数是253,13的20次方的最后三位数是801. 输入: 有多组测试数据 每组测试数据 ...
- 练习:求高次方的尾数(末三位)
APP发文编辑机制更新后,目前还不可以上传图片,
- c语言求正整数连续数的和大数字_机器视觉(图像处理)入门金典之图像数字化及处理方法...
点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 声明:内容大部分从某文档中搬砖过来,部分自己理解的标注.最开始接触 ...
- 用c语言求五位回文数,C语言求回文数(详解版)
问题描述 打印所有不超过n(取n<256)的其平方具有对称性质的数(也称回文数). 问题分析 对于要判定的数n计算出其平方后(存于a),按照"回文数"的定义要将最高位与最低位 ...
- C语言求毕达哥拉斯亲密数
亲密数 2500年前数学大师毕达哥拉斯就发现,220与284两数之间存在着奇妙的联系: 220的真因数之和为:1+2+4+5+10+11+20+22+44+55+110=284 284的真因数之和为: ...
- c语言编写函数求回文数,C语言求回文数(详解版)
问题描述 打印所有不超过n(取n<256)的其平方具有对称性质的数(也称回文数). 问题分析 对于要判定的数n计算出其平方后(存于a),按照"回文数"的定义要将最高位与最低位 ...
最新文章
- 多视图立体匹配论文分享CasMVSNet
- Silverlight Blend动画设计系列四:倾斜动画(SkewTransform)
- 提高ASP.NET性能的一点方法
- 合并多个文本文件中的内容到一个文件中
- 深入研究java.lang.Runtime类【转】
- python命令行模式和交互模式区别_对命令行模式与python交互模式介绍
- 基于Starling移动项目开发准备工作
- 全国地区 mysql表_2017全国省市区数据库-2017全国省市区数据库下载 官方版 - 河东下载站...
- Win10 DirectShow
- 第三方支付接口对接基本流程
- 在c语言中对于整型变量采用哪两种存储形式,在C语言中的实型变量分为2种类型,它们是()和()...
- cox生存分析-从基本概念到参数求解
- 如何辩证看待技术与业务的关系
- 理性分析:那些吃蝙蝠的人,根本动机是什么?
- 怎么压缩动态图片?手机怎么压缩gif动图?
- 常用MAVROS话题和服务
- 视音频编解码技术零基础学习方法(向雷神致敬)
- 微信小程序,不可不知的一二三四
- Android自定义实现点赞效果!
- Trunk端口的配置