题型:综合题 题类: 难易度:困难
浙江省绍兴市2023-2024学年高二上学期信息技术期中考试选考试卷
比如:仓库存储情况列表a=["0","A","A","B","B","A","0","0","0"],其中"0"表示空位,"A","B"表示位置上货物种类,现需从中取出一件B货物,则应从右侧取出,取完后,仓库存储列表更新为a=["0","A","A","B","A","0","0","0","0"]。
#读取仓库存储情况列表a,代码略
m=len(a)
kind=input("请输入需要取出的货物种类:")
left=0 #left记录从左侧取出此货物时需移动其他物品的次数
right=0 #right记录从右侧取出此货物时需移动其他物品的次数
i=0;j=m-1
t=[0,0] #t表示是否找到此货物
while i<=j and t!=[1,1]:
if :
i=i+1
elif a[i]!=kind:
left+=1
i=i+1
else:
t[0]=1
if a[j]=="0":
j=j-1
elif a[j]!=kind:
j=j-1
else:
t[1]=1
if left>right:
for k in range(j,m-1):
a[k]=a[k+1]
a[m-1]="0"
else:
for k in range():
a[k]=a[k-1]
a[0]="0"
print(a)
①两位D组裁判分别打“难度分”,取平均值作为该参赛选手的最终难度分。
②五位E组裁判分别打“完成分”,在5个E组打分结果中,去掉一个最高分和一个最低分,然后取平均值作为该参赛选手的最终完成分。
③难度分和完成分之和,即该参赛选手的最终得分。
例如:某参赛选手打分如下:
D组裁判打分 |
E组裁判打分 |
|||||
6.5 |
6.9 |
9.5 |
9.0 |
8.3 |
8.8 |
7.6 |
该选手“难度分”为(6.5+6.9)/2=6.7。E组裁判打分去掉一个最高分和一个最低分之后,计算“完成分”为(9.0+8.3+8.8)/3=8.7。所以该选手最终得分为6.7+8.7=15.4分。
小杜编写一个VB程序:程序运行时从数据库读取参赛选手人数和参赛选手的打分数据,依次存储在数组a中;单击“统计”按钮,依据数组a中的相关数据统计各选手的“难度分”“完成分”和“最终得分”,并在列表框List1中输出。数组a各元素的含义如下,程序运行界面如图所示。
数组元素 | 数组元素的含义 |
a(0) | 存储参赛人数n |
a(1) | a(1)和a(2)为第1位选手的D组两位裁判的打分。 a(3)、a(4)、…、a(7)为第1位选手的E组五位裁判的打分 |
… | |
a(7) | |
a(8) | a(8)和 a(9)为第2位选手的D组两位裁判的打分。 a(10)、a(11)、…、a(14)为第2位选手的E组五位裁判的打分 |
… | |
a(14) | |
… | … |
实现上述功能的VB程序如下,请回答下列问题:
试题篮