易语言非递归解决阶乘问题

在阶乘问题中我们在算法里采用最多的就是递归,这样演示易语言采用非递归的输入一个正整数计算出它的阶乘。
利用算法:
问题:求阶乘
问题描述:
输入一个正整数计算出它的阶乘
问题分析:
0的阶乘等于1,1的阶乘等于1
N的阶乘等于N乘以(N-1)的阶乘
由此可以断定N的阶乘是1*2*3*4......(n-1)*n

易语言阶乘源码

易语言有一个数据类型,大数,这里我们采用这个数据类型完成阶乘。
界面放置一个输入框,输入计算几的阶乘,一个显示框。

.版本 2
.支持库 eCalc
 
.子程序 _计算图形按钮_被单击
.局部变量 求阶乘数, 整数型
.局部变量 结果, 大数
.局部变量 局部计次变量, 整数型
.局部变量 临时大数变量, 大数
 
编辑框2.内容 = “”
' 获得输入的待求数
求阶乘数 = 到数值 (编辑框1.内容)
' 0的阶乘等于1
结果.导入数字 (1)
.计次循环首 (求阶乘数, 局部计次变量)
    临时大数变量.导入数字 (局部计次变量)
    结果 = 结果.乘 (临时大数变量)
.计次循环尾 ()
' 输出结果
编辑框2.内容 = 结果.导出文本 ()

分享到:

用微信扫一扫,分享给朋友


发布日期:

所属分类: 编程 标签: