2023年12月电子学会青少年软件编程(Python三级)等级考试试卷
操作/编程
三级
2023
2024-01-06 13:10:29
99次
一、编程题
学校图书馆为了方便查找管理书籍,给每本书编写了号码,[8,9,10,12,13,14,16,17,25,27],输入号码提示这本书号码排第几。
例如:输入12,输出:要查找的书号12排第4 。
请完善程序:
lst=[8,9,10,12,13,14,16,17,25,27]
hm=int(input('请输入书本号码'))
①
i,j=0,n-1
b=-1
while ② :
m=(i+j)//2
if ③ :
b=m
break
elif hm>lst[m]:
④
else:
j=m-1
if b==-1:
print('要查找的书号['+str(hm)+']不在列表lst中。')
else:
print('要查找的书号['+str(hm)+']排第'+ ⑤ )
【知识点】 电子学会Python三级
当我们过马路的时候,经常会遇到红绿灯,你知道这些信号灯的时长是怎么来的吗?若要用python分析计算人行马路最短绿灯时长,我们需要知道马路的宽度s,行人的步行速度v以及行人的反应时长t0,因为绿灯的最短时长计算公式为t=s/v+t0。
不同的人有不同的行走速度。通常在正常成人、老人、小孩的步行速度中,应选取老人或者小孩的数据进行计算比较合理。
用Python模拟编写绿灯最短时长程序和测试输出结果(测试输入马路宽度为15)分别如下,请补全划线处代码:

v=1.2 #设置行走速度
t0=1 #设置行人反应时长
s=int(input("请输入马路的宽度(米):"))
t= ①
print(t)
#观察发现,在实际生活中,绿灯显示时长不可能为小数,因此若要上述输出结果正常,可以修改print(t)语句,那么你会如何修改?请在下方填入你的代码。
if t>int(t):
print( ② )
elif t==int(t):
print( ③ )
【知识点】 电子学会Python三级

