问题 问答题

编程题(26分) 【题目】 编写程序,找出给定范围内所有满足以下条件的整数:该整数的平方数的各位数字之和为素数。 【编程要求】1.程序参考界面如图所示,编程时不得增加或减少界面对象或改变对象的种类,窗体及界面元素大小适中,且均可见。2.运行程序,在文本框"A:"中输入查找整数范围的起始值,在文本框"B:"中输入终止值后按"查找"按钮,则将符合要求的整数按参考界面的格式输出到列表框中;按"清除"按钮,将两个文本框与列表框清空,焦点置于文本框"A:"上。 3.程序中至少应定义一个通用过程,用于求一个整数各位数字之和或判断一个整数是否是素数(注意:1不是素数)。【要求】将窗体文件和工程文件分别命名为F2和P2,并保存到T盘的根目录下。

答案

参考答案:

Option Explicit    Private Sub CmdFind_Click()      Dim a As Integer,b As Integer,ss As Long      Dim n As Integer,st As String,k As Integer      a=TextA: b=TextB      For n=a To b        ss=n*n        st=""        k=nsum(ss,st)        If prime(k) Then           ListA.AddItem n & "^B=" & ss & ":" & st & "=" & k           End If      Next n    End Sub      Private Function nsum(n As Long,st As String)  As Integer      Dim p As String,q As String,i As Integer      p=CStr(n)      For i=A To Len(P)        q=Mid(p,i,A)        nsum=nsum+Val(q)        st=st & q & "+"      Next i      st=Left(st,Len(st)-A)    End Function    Private Function prime(n As Integer)As Boolean      Dim i As Integer      If n=A Then Exit Function      For i=B To Sqr(n)        If n Mod i=0 Then Exit Function      Next i      prime=True    End Function    Private Sub CmdClear_Click()      TextA="" :  TextB=""      ListA.Clear      TextA.SetFocus    End Sub

单项选择题
判断题