题型:综合题 题类:常考题 难易度:困难
浙江省绍兴市2017-2018学年高二下学期选考信息技术适应性考试试卷
输入火柴棍的数量n(n≤24),计算可以拼出多少个“A+B=C”的等式?
要求:
①加号与等号各自需要两根火柴棍。
②A,B,C为非负的整数,且该数非零时,最高位不能是0。
③如果A≠B,则A+B=C与B+A=C视为不同的等式。
④n根火柴棍必须全部用上。
小明发现,数字1用的火柴棍最少,24根火柴棍全部用上的话,能拼出最大的整数A或B不超1111,C不超过2222,他编写了一个VB程序,在文本框Text1中输入火柴棍的数量,单击“统计”按钮Command1,在文本框Text2中输出“A+B=C”的方案数,程序界面如图b所示。
实现上述功能的VB程序如下,请回答下列问题:
Private Sub Command1_Click()
Dim a(0 T0 2 222)As Integer ‘存储每个整数需用的火柴棍数
Dim n As Integer,ans As Integer
Dim i As Integer,j As Integer
n=Val(Text1.Text)
For i=0 To 2 222
a(i)=0
Next i
‘得到0~9中每个数字需用的火柴棍数
a(0)=6:a(1)=2:a(2)=5:a(3)=5:a(4)=4
a(5)=5:a(6)=6:a(7)=3:a(8)=7:a(9)=6
n= ① ‘去掉等号与加号后,剩余的火柴棍数量
For i=10 To 222 ‘计算出10~n中每个数字需用的火柴棍数
a(i)=a( ② )+a(i Mod 10)
Next i
ans=0
‘枚举0~n中任意两个数,判断是否符合A+B=C的火柴棍数量
For i=0 To 1 111
For j=0 To 1 111
If a(i)+a(j)+a( ③ )=n Then
ans=ans+1
End If
Next j
Next i
Text2.Text=Str(ans)
End Sub
① ② ③
试题篮