VB_Python代码对照算法百题(007)

VB_Python代码对照算法百题(007)

VB代码:

(2016年10月_浙江)14.编写“加法练习题生成器”程序,实现如下功能:在文本框Text1中输入题数n,单击“生成”按钮Command1,在列表框List1中显示n个两数之和小于100的加法练习题。程序运行界面如图a所示。

图a 图b

(1)在设计程序界面时,使应使用图b所示“控件工具箱”中的(填写相应编号)添加“生成”按钮。

(2)实现上述功能的VB程序如下,请在划线处填入合适的代码。

Private SubCommand1_Click()

Dim n As Integer, i As Integer, a As Integer,b As Integer

Randomize

n = Val(Text1.Text)

i =①

Do While i

a = Int(Rnd * 100)

b = Int(Rnd * 100)

If②Then

List1.AddItem "(" + Str(i) +")" + Str(a) + "+" + Str(b) + "="

i = i + 1

End If

Loop

End Sub

(3)运行该程序,在文本框中输入5,单击“生成”按钮后,对语句a = Int(Rnd * 100)执行次数的描述,最合理的是(单选,填字母:A.执行次数等于5 B.执行次数大于等于5 C.执行次数小于等于5)

参考答案:

(1)3

(2)①1 ②a+b

(3)B

解析:本题功能是生成n个100以内的加法练习题,应思考两个问题:(1)如何控制生成指定数目的加法练习题?(2)如何使两数之和小于100。

第(1)题考查对象的添加,1为标签,2为文本框,3为命令按钮,4为列表框,“生成”是按钮控件,图中控件工具箱中标识3为按钮控件。

在填写第(2)题第①个空格时,应联系上下文代码,上一行输入了变量n的值,下一行循环条件为i<=n,可以得出变量i存储的是练习题的题号,说明①处一定要为变量i赋初值,那么初值是0还是1呢,通过验证可知初值为1合理;填空②处表示当符合该条件表达式时,输出该加法练习题,题干中明确说明两数之和小于100,两个加数分别为a和b,故该条件表达式为a+b

第(3)题考查对程序功能的理解,在产生两个数时,存在不符合要求的情况(a+b)>=100时),由变量i负责对符合要求的题目计数,符合要求时,变量i增加1。不符合要求则i不计数,“a=int(rnd*100)”和“b=int(rnd*100)”再重新产生两个数。所以如果产生5个题,“a=int(rnd*100)”执行的次数可能大于或等于5次。

解答本题时要把握三要素,循环的范围是什么,如何判断是正确的解及解的输出形式。

在对变量进行赋初值时,要考虑初值的合理性。

Python代码:

import random

n=int(input('题数:\n'))

i=1

while i

a=random.randint(0,99)

b=random.randint(0,99)

if a+b

print("(" +str(i) + ")" + str(a) + "+" + str(b) + "=")

i=i+1

Python代码运行结果:

题数:

5

(1)93+3=

(2)30+29=

(3)76+20=

(4)27+66=

(5)20+12=

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180906G10CPX00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券