【加试题】任意一个英文单词都由若干字母组成,记录单词中每个字母出现的次数,其中maxn为最多次数,minn为最少次数,如果maxn与minn的差是一个素数,这个单词就是一个幸运单词。
例如:单词banana由b,a,n三个字母组成,其中a字母出现了3次,n字母出现了2次,b字母出现了1次,得到maxn为3,minn为1,maxn与minn的差为2,是一个素数,那么banana就是一个幸运单词。
编写一个判断幸运单词的VB程序,在文本框Text1中输入一个单词(注:仅输入小写字母,且长度小于100),单击“判断”按钮Command1,标签Labal1输出运行结果。
程序运行界面如图所示,实现上述功能的VB代码如下,但加框处代码有错,请改正。
Private Sub Command1_Click() Dim maxn As Integer Dim minn As Integer Dim a(1 To 26)As Integer maxn=0 minn=100 s= Text1.Text n=Len(s) For i=1 To n dz=Mid(s,i,1) If dz>=“a”And dz<=“z”Then p= ‘(1) a(p)=a(p)+1 End If Next i For j=1 To 26 If a(j)>0 Then If a(j)>maxn Then maxn=a(j) If a(i)<minn Then minn=a(j) End If Next j If(maxn-minn>=1)And Then ‘(2) Label1.Caption=“幸运单词!” Else Label1.Caption=“无!” End If End Sub ‘自定义函数iszs(x)用于判断整数x是否为素数,如果x是素数返回True Function iszs(x As Integer)As Boolean ‘代码略 End Fuction
(1)
处加框代码应改为;
(2)
处加框代码应改为。
答案: 【1】Asc(dz)Asc(“a”)+1
【1】iszs(maxn-minn)