题库 高中信息

题干

分析完善程序。
假设银行的年存储利率为3%,如果现在存储10000元钱,问多少年后连本带利超过12000元。设定:连本带利=本金*(1+利率)年数
假设n年后连本带息超过12000,根据题意得出数学关系式:10000*(1+3%)n>12000,求最小的n。
(参考程序)
Dim s as single
Dim r as single
Dim n as integer
s=10000
r=0.03
n=0
Do while 
n=n+1
s=s*(1+r)
Loop
Print n;”年后”:”连本带利超过”;s
根据上述回答下列问题
(1)本题采用的算法是___________(填写:解析法/穷举法/排序法/递归法)
(2)写出参考程序中空白处表达式__________________________________ 。
上一题 下一题 0.99难度 None 更新时间:2020-03-16 08:38:37

答案(点此获取答案解析)

同类题1

为分析数组a中各元素依次变化的情况,进行如下定义:
变化段:数组中相邻两个元素构成一个变化段。变化段有上升段(a(i)>a(i-1))、下降段(a(i)<a(i-1))和持平段(a(i)=a(i-1))。数组a中的n个元素可构成n-1个依次排列的变化段。
波峰:从上升段转到下降段形成一个波峰。波峰的起点是峰顶前所有连续上升段中的第1个,终点是峰顶后所有连续下降段中的最后1个。
对称波峰:上升段与下降段个数相同的波峰称为对称波峰。
下图为一组数据的变化段及波峰示意图。

现要求统计数组a各元素依次变化过程中“对称波峰”的个数。小李依据上述描述设计如下VB程序。请回答下列问题:
(1)数组元素“1,4,3,3,2,6,8,7,9,3,4,7,9,6,3,1”依次变化过程中“对称波峰”的个数为_____。
(2)请在划线处填入合适的代码。
Const n = 20
Dim a(1 To n) As Integer
Private Sub Form_Load()
'读取数据,并存储到数组a中,代码略
End Sub
Private Sub Command1_Click()

Dim flag As Integer  '存储变化段的状态:1表示升,-1表示降,0表示平

Dim count As Integer '存储对称波峰段的个数

Dim steps As Integer

Dim i As Integer

flag = 0: steps = 0: count = 0

For i = ________ To n

If a(i) > a(i - 1) Then

If IsSymPeak(flag, steps) Then count = count + 1

If flag = 0 Or flag = -1 Then

_________

Else

steps = steps + 1

End If

flag = 1

ElseIf a(i) = a(i - 1) Then

If IsSymPeak(flag, steps) Then count = count + 1

steps = 0

flag = 0

Else

  steps = steps - 1

flag = -1

End If

Next i

If IsSymPeak(flag, steps) Then count = count + 1

Text1.Text = Str(count)

End Sub
Function IsSymPeak(flag As Integer, steps As Integer) As Boolean

If __________________ Then

IsSymPeak = True

Else

IsSymPeak = False

End If

End Function

同类题5

【加试题】小王模拟超市收银机扫描商品条形码后计算总价的过程制作了一个VB程序。功能如下:在文本框Text1中输入商品条形码,按回车键后会将已经输入的条形码显示在列表框List1中,同时将商品明细显示在列表框List2中。点击按钮“计算商品总价”后,会将所有商品的总价显示在文本框Text2中。程序界面如图所示:

实现上述功能的部分VB程序如下,请在三个划线处填入合适代码。
'定义全局数组变量
Dim a(1 To 10) As Long
Dim b(1 To 10) As String
'自动加载条形码信息以及对应的商品信息
Private Sub Form_Load()
Dim i As Integer
a(1) = 503741
For i =" 2" To 10
a(i) =" a(i" - 1) + 1
Next i
b(1) = "可乐 5.00"
b(2) = "薯片 7.50"
b(3) = "牛奶 5.60"
b(4) = "橙汁 7.50"
b(5) = "面包 4.00"
b(6) = "蜂蜜 28.00"
b(7) = "蛋糕 12.00"
b(8) = "绿箭 3.50"
b(9) = "饼干 6.00"
b(10) = "雪碧 5.00"
End Sub
'输入条形码,查找条形码,并显示条形码及其对应的商品信息
Private Sub Text1_KeyPress(KeyAscii As Integer)
Dim txm As Long:
Dim i As Integer:
Dim j As Integer
txm = Val(Text1.Text)
If KeyAscii =" 13" Then
If txm >=" 503741" And txm <=" 503750" Then
List1.AddItem txm
Text1.Text = ""
i =" 1:" j = 10
Do While i <= j
    ①
If txm =" a(m)" Then
List2.AddItem b(m)
Exit Do
ElseIf txm > a(m) Then
i =" m" + 1
Else
   ②   
End If
Loop
Else
MsgBox "条形码输入错误,无此商品"
Text1.Text = ""
End If
End If
End Sub
'计算所购商品的总额
Private Sub Command1_Click()
Dim i As Integer, mx As String, jg As String, sum As Single
For i =" 0" To 9
If List2.List(i) <> "" Then
mx = List2.List(i)
sum =" sum" + Mid(mx, 4)
End If
Next i
Text2.Text = ③    
End Sub