回 帖 发 新 帖 刷新版面

主题:求解····急急急急急。。。。。。。。。

一、改错题(14分)VB01
【题目】本程序的功能是:把10~20范围内的数分别表示成若干个质因子连乘的形式。
Option Base 1
Private Sub Command1_Click()
  Dim j  As Integer, pf() As Integer, i As Integer
  Dim st As String
  For i = 10 To 20
    Call prime_f(i, pf)
    st = CStr(i) & "="
    For j = 1 To UBound(pf) 
      st = st & Str(pf(j)) & "*"
    Next j
    st = st & Str(pf(j))
    List1.AddItem st
  Next i
End Sub

Private Sub prime_f(n As Integer, a() As Integer)
  Dim i As Integer, k As Integer
  i = 2
  Do
    If n Mod i = 0 Then
      k = k + 1
      ReDim Preserve a(k)
      a(k) = i
      n = n \ i
    Else
      i = i + 1
    End If
  Loop Until n <= 0
End Sub
二、编程题(26分)
【题目】编写程序找出介于M,K(M>100,K<1000)之间的勾股弦数。设N是介于M、K之间的正整数,它的第一位、第二位数字依次为a、b,最后一位(或两位)是c,若a2+b2=c2,则这样的数N称为勾股弦数。
【编程要求】
1.程序参考界面如图所示,编程时不得增加或减少界面对象或改变对象的种类,窗体及界面元素大小适中,且均可见;
2.运行程序,首先在文本框M和K中输入查找范围,然后按“运行”按钮,在列表框中以指定格式输出查找结果,若指定区间无勾股弦数,则输出“无勾股弦数!”信息;按“清理”按钮,将文本框和列表框清空,焦点置于文本框M上;按“结束”按钮,结束程序运行;
3.程序中应定义一个通用过程,用于将一个整数按给定规则分解成三位数,并验证其是否为勾股弦数。
【算法提示】注意,三角形的边长不得为0。

回复列表 (共1个回复)

沙发

你自己一点看打法都没有?

我来回复

您尚未登录,请登录后再回复。点此登录或注册