实验十四 过程(一)
实验目的:
1、 理解自定义函数过程的定义和调用方法; 2、 掌握自定义子过程的定义和调用方法; 3、 掌握子过程与函数过程的使用差别;
实验内容:
1、编写一函数过程Prime(n),对于已知正整数n,判断该数是否为素数,函数的返回值类型为布尔型。
1)利用判断素数的函数,编写程序找出1~100之间的所有孪生素数(若两个素数之差为2,则这两个素数就是一对孪生素数)。例如:3和5、5和7、11和13等都是孪生素数。
【提示】如果n和n+2都是素数,那就是孪生素数。
2) 窗体上包含有两个名称分别为Op1和Op2的单选按钮,标题分别为“100-200的素数和” 和“200-400的素数和”。还有一个文本框和两个命
令按钮,标题分别为“求和”和“写入”。程序运行后,选中某个单选按钮,并单击“求和”按钮,则计算指明范围内的素数之和,并显示在文本框中。单击“写入”,则把结果存入Out.txt中。(要求素数判断必须函数来实现)。
2、编写一函数过程Fac(n),对于已知正整数n,求其阶乘值。 1)利用Fac(n)函数,编写程序分别输入两个正整数X和Y, 计算并输出x!+(x+1)! +(x+2)! + …… +(x+y)!之和。
2) 利用Fac(n)函数,编写程序分别输入两个正整数m和n(n≥m),求
Cn?mn!m!(n?m)!组合数的值。
3、在上周实验【选作题】的基础上完成,编写一查找Search(fn$,s$)函数,用于判断指定文件中,用户名是否已注册。并利用查找Search(fn$,s$)函数实现用户的注册及登录功能。
【选作题】编写一子过程Delestr(s1,s2),将字符串s1中出现s2
子字符串删去,结果仍旧存放于s1中。 【提示】
(1)在S1字符串中找S2的子字符串,可利用Instr( )函数,要考虑到S1中可能存在多少或不存在S2字符串,用Do while Instr(s1,s2)>0循环结构来实现。
(2)若在S1中找到S2字符串,首先确定S1 字符串,首先要确定S1字符串的长度,因S1字符串在进行多次删除时,长度在变化。然后通过Left()、Mid()函数或Right()函数的调用达到删除S1中存在的S2字符串。