阶乘设计实验报告
问题描述
输入一个自然数n,求,同时统计结果中有多少个0。即编写一个输入整数n,计算并输出阶乘和结果中0的个数的程序。
课题分析
首先要输入自然数n,算出n的阶乘。
分析:由于n!=1*2*3*…*n,因此采用累乘的方法,用变量S(累乘器)来存放累计乘机(初值=1),用变量i来存放乘数(即被乘的数),i=1,2,3,,,,,n,接收到n后计算n!。
统计结果中有多少个0
分析:在text1中得到自然数n阶乘的结果,运用字符串函数统计其0的个数。设计中运用到len(x)和min(x,m,n)函数。用len(x)计算text1中字符串所含字符的个数,mid(x)从字符串s(=s)的第m个字符开始截取n个字符,令Mid(, t, 1) = "0",d为累加器,每运行一次程序,执行d=d+1。当t截取到最后一个为0的字符串时,退出循环。
疑问:
·输入数据n时判断是否为自然数,vb语言如何编写判断自然数的程序?
·N是否有范围限制,可以无限放大吗?
程序设计基本步骤如下:
建立用户界面和对象属性
在窗体上建立2个文本框,5个标签和1个命令按钮。
各对象的主要属性
对象
属性(属性值)
属性(属性值)
属性(属性值)
窗体
Name(form)
Caption(“阶乘”)
文本框
Name(text)
Text(“”)
标签
Name(label)
Caption(“”)
命令按钮
Name(command)
Caption(“计算”)
(思考如何排列设计能使界面看上去简单整洁)
编写事件代码
注意事项:
·声明变量,选择合适的数据类型。
·输入数据的方式,text和inputbox都可以,根据情况再做考虑。
·循环结构的使用,考虑for…next循环,注意结构的完整性,不要漏掉结束语句,嵌套结构尤其注意。
·统计结果中0的个数时,可以用字符串函数,考虑left(x),
Right(x),mid(x,m,n),len(x),哪种方法可以完成运算。
·累乘法,累加法的使用。
流程图
开始
输入n,i=1
S=1
n>0 and
n<18
N
Y
四.相关运行界面
:
第一次调试:出现实时错误,如图所示
我原先声明 s as long,用的数据类型是长整型,最大不超过2 147 483 647,而13的
阶乘设计实验报告 来自淘豆网m.daumloan.com转载请标明出处.