在考生目录下有一个工程文件vbsii5.vbp,用来计算勾股定理整数组合的个数。勾股定理中3个数的关系是:a2+b2=c2。例如,3、4、5就是一个满足条件的整数组合(注意:a,b,c分别为4,3,5与分别为3,4,5被视为同一个组合,不应该重复计算)。编

admin2017-09-22  32

问题 在考生目录下有一个工程文件vbsii5.vbp,用来计算勾股定理整数组合的个数。勾股定理中3个数的关系是:a2+b2=c2。例如,3、4、5就是一个满足条件的整数组合(注意:a,b,c分别为4,3,5与分别为3,4,5被视为同一个组合,不应该重复计算)。编写程序,统计三个数均在60以内满足上述关系的整数组合的个数,并显示在标签Lbl1中,运行时程序界面如图3.146所示。

    注意:不得修改原有程序的控件的属性。在结束程序运行之前,必须至少正确运行一次程序,将统计的结果显示在标签中,否则无成绩。最后把修改后的文件按原文件名存盘。
    程序源码:
Public Sub save(1 As Control)
Open  App.Path  &  "\out5.txt"  For
  Output As #1
Print  #1,1.Caption
Close  #1
End  Sub

选项

答案步骤1:打开考生文件夹下的工程文件vbsj5.vbp,在码编辑窗口的指定位置输入代码。参考代码: Private Sub Command1_Click() ’===考生编写程序开始==== Dim i As Integer, j As Integer Dim n As Integer For i=1 To 5 9 For j=i To 60 If Sqr(i*i+j*j)=Int(Sqr _ (i*i+j*j))And Sqr _ (i*i+j*j)<=60 Then n=n+1 End If Next Next Lbll.Caption=n ’===考生编写程序结束==== ’不要改动以下内容 save Label1 End Sub 步骤2:按键运行程序,单击“计算”按钮。 步骤3:按要求将文件保存至考生文件夹中。

解析 本题可通过一个嵌套的For循环,来统计满足题目要求的整数组合的个数。其中,外循环变量i的取值范围为1~60,内循环变量j的取值范围为i~60(这样可避免出现重复的组合)。通过表达式:Sqr(i*i+j*j)=Int(Sqr(i*i+j*j))是否成立来判断Sqr(i*i+j*j)的值是否为整数,并通过表达式:Sqr(i*i+j*j)<=60是否成立来判断Sqr(i*i+j*j)的值是否在60以内,当两个条件同时满足时,此时的i、j及Sqr(i*i+j*j)即为满足题目要求的整数组合,记录组合个数的变量n加一。循环结束,将n值显示在标签Label1中。
转载请注明原文地址:https://kaotiyun.com/show/ekGp777K
0

最新回复(0)