D语言版趣味程序:6.高次方数的尾数
(说明:原文见http://www.kuqin.com/tiku/c100/,是C语言版。本人改写成D-tango版。与各位D初学者共勉。)
问题
求13的13次方的最后三位数
问题分析与算法设计
解本题最直接的方法是:将13累乘13次方截取最后三位即可。
但是由于计算机所能表示的整数范围有限,用这种“正确”的算法不可能得
到正确的结果。事实上,题目仅要求最后三位的值,完全没有必要求13的
13次方的完整结果。
研究乘法的规律发现:乘积的最后三位的值只与乘数和被乘数的后三位有关,
与乘数和被乘数的高位无关。利用这一规律,可以大大简化程序。
module qwcx6;
import tango.io.Stdout,
tango.util.Convert,
tango.io.Console;
import tango.stdc.stdlib;
int main()
{
int i,x,y,last=1; /*变量last保存求X的Y次方过程中的部分乘积的后三位*/
Stdout("本程序计算x的y次方的最后三位数\n 请输入x:").newline;
x = to!(int)(Cin.get());
Stdout("请输入y:").newline;
y = to!(int)(Cin.get());
for(i=1;i<=y;i++) /*X自乘Y次*/
last=last*x%1000; /*将last乘X后对1000取模,即求积的后三位*/
Stdout.formatln("{}^{}的最后三位是: {:d3}",x,y,last%1000); /*打印结果*/
system("pause");//程序执行后显示“按任意键继续”,以便观察
return 0;
}
分享到:
相关推荐
网上找的,《C/C++语言经典实用趣味程序设计编程百例精解》 这是完整的,直到最后一例:100.数字移动 大家看着下不下吧。 前10例内容如下: 1.绘制余弦曲线 2.绘制余弦曲线和直线 3.绘制圆 ...
076 计算高次方数的尾数 C语言源代码文件
在计算机科学和数学中,高次方数的尾数是一个重要的概念,特别是在处理大整数运算和数值计算时。这个主题通常涉及到快速幂算法、模运算以及数字的位操作。当我们谈论“高次方数的尾数”时,我们关注的是一个数的幂...
高次方数的尾数 7.阶乘尾数零的个数 8.借书方案知多少 9.杨辉三角形 10.数制转换 11.打鱼还是晒网 12.抓交通肇事犯 13.该存多少钱 14.怎样存钱利最大 15.捕鱼和分鱼 16.出售金鱼 17.平分七筐...
标题 "sushu.rar_300_site:en.pudn.com" 提示这是一个与编程相关的压缩文件,可能包含了在300秒内计算10的10次方以内所有素数的源代码。描述中指出的目标是找到一定时间限制内的素数,这涉及到算法优化和性能测试。 ...
13. 正确答案:D. 三极管、二极管。分子计算机试图利用分子实现类似电子元件的功能。 14. 正确答案:D. 病毒。能够导致计算机问题的程序被称为计算机病毒。 15. 正确答案:C. PCI。Pentium微型机的局部总线技术通常...
C语言编写的六个趣味问题的程序,包括: 075 绘制余弦曲线和直线的迭加 076 计算高次方数的尾数 077 打鱼还是晒网 078 怎样存钱以获取最大利息 079 阿姆斯特朗数 080 亲密数
标题中的"xiao-xing-ji-suan-qi.rar"表明这是一个关于小型计算器程序的压缩文件,发布在"PUDN"网站上。"site:www.pudn.com"标签进一步确认了这个信息来源。"xiao xing ji suan qi.txt"是压缩包中的文件名,可能包含...
根据给定文件的信息,本文将围绕“3s输入文件:change.in”展开,详细解析其设计背景、实验内容、实验目的以及程序实现等关键知识点。 ### 设计背景 随着现代科技的飞速发展,计算机技术得到了空前的进步与普及。...
高次方数的尾数 7.阶乘尾数零的个数 8.借书方案知多少 9.杨辉三角形 10.数制转换 <br>C/C++语言经典实用趣味程序设计编程百例精解(2) (详解收藏在)http://www.klfd.net.cn/?p=385 <br>11....
6.高次方数的尾数 7 7.阶乘尾数零的个数 8 8.借书方案知多少 9 9.杨辉三角形 9 10.数制转换 11 11.打鱼还是晒网 12 12.抓交通肇事犯 14 13.该存多少钱 14 14.怎样存钱利最大 15 15.捕鱼和分鱼 17 16.出售金鱼 18 17....
* 程序思路:使用C语言的数学库函数,计算高次方数的尾数,学习算法的应用。 1.7.阶乘尾数零的个数 * 知识点:数学函数、算法 * 程序思路:使用C语言的数学库函数,计算阶乘尾数零的个数,学习算法的应用。 1.8 ...
2. 主机数 = 2的6次方 - 2 = 62 3. 有效子网:block size = 256 - 192 = 64,第一个子网是192.168.10.64,第二个是192.168.10.128 4. 广播地址:192.168.10.127和192.168.10.191 5. 有效主机范围:192.168.10.65到...
- **浮点数表示**:通常包括阶码、尾数(也称作尾数或指数)以及符号位。 - **IEEE 754标准**:定义了多种浮点数表示方式的标准,包括单精度和双精度格式。 - **移码与补码**:在表示阶码时常用到。 #### 3. 定点数...
本课时主要关注两个关键概念:n次方根与分数指数幂,以及无理数指数幂及其运算性质。这部分知识不仅在解决实际问题中有着广泛的应用,也是后续学习更复杂数学概念的基础。 首先,我们来看n次方根。n次方根是对一个...
【C与C++语言经典、实用、趣味程序设计编程】涉及的知识点广泛,包括基本的程序设计概念、数学运算、图形绘制以及数据处理。下面将逐一展开这些知识点。 1. **绘制余弦曲线** - **数学知识**:余弦函数`cos(x)`,...
答案:D.以上都不是 解释:Linux 下可执行文件没有固定的扩展名。 5.如果树根算第 1 层,那么一棵 n 层的二叉树最多有( )个结点。 答案:A.2n-1 解释:一棵 n 层的二叉树最多有2n-1个结点。 6.提出...
高次方数的尾数 7.阶乘尾数零的个数 8.借书方案知多少 9.杨辉三角形 10.数值转换 11.打鱼还是晒网 12.抓交通肇事犯 13.该存多少钱 14.怎样存钱利最大 15.捕鱼和分鱼 16.出售...
- **正确答案**:D. 2的40次方 3. **二进制数相加** - 给定两个二进制数:00100100 和 00010101。 - 相加过程如下: ``` 00100100 00010101 -------- 00111001 ``` - **正确答案**:D. 00111001 4. **...