试题

试题 试卷

logo

题型:综合题 题类: 难易度:困难

浙江省绍兴市2023-2024学年高二上学期信息技术期中考试选考试卷

某货品仓库最多存储m件货物,只能从左右两侧取出,现要在移动其他货物次数尽可能少的情况下取出一件某类货物,取出后,其他货物按照原有顺序重新存入,货物间不留空隙。

比如:仓库存储情况列表a=["0","A","A","B","B","A","0","0","0"],其中"0"表示空位,"A","B"表示位置上货物种类,现需从中取出一件B货物,则应从右侧取出,取完后,仓库存储列表更新为a=["0","A","A","B","A","0","0","0","0"]。

(1)、若要在上述实例中,再取出一件B货物,则应从(选填:左侧/右侧)取出。
(2)、实现上述功能的部分Python程序如下,请在划线处填入合适代码。

#读取仓库存储情况列表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)

举一反三
某仓库物品代码格式为“X-XXX-XXXXX-Y”,其中“X”和“Y”均为0到9之间的数字,“Y”为校验码。校验码由前面9个X计算得到,计算方法为:从左边开始,第1个数字乘以1加上第2个数字乘以2……依此类推,直到加上第9个数字乘以9,将该结果除以10,所得余数即为校验码。

小吴设计一个根据校验码校验物品代码的VB程序,功能如下:在文本框Text1中输入物品代码,单击“校验”按钮Command1,如果输入的校验码与计算所得的校验码一致,则输出“校验通过。”(如下左图所示),否则输出“校验不通过!”(如下右图所示)。

实现上述功能的VB程序如下,加框处代码有错,请改正。

Dim s As String           '用于存储输入的物品代码

Dim t As String

Dim i As Integer, j As Integer

Dim sum As Integer           '用于存储计算校验码的累加和

Dim check_old As Integer             '用于存储输入物品代码中的校验码Y

Dim check_new As Integer            '用于存储按照前面9个数字X计算所得的新校验码

Dim a(1 To 10)As Integer

Private Sub Command1_Click()

    '从物品代码中取出9个数字X依次存储到a(1)到a(9)中,取出校验码Y存储到a(10)中

    s= Text     ①

    j=0

    For i=1 To 13

        t=Mid(s, i, 1)

        If(t>="0")And(t<="9") Then

            j=j+1

            a(j)=Val(t)

        End If

    Next i

    '计算新的校验码并和输入的校验码进行比较

    sum=0

    For i=1 To 9

        sum=sum+       ②

    Next i

    check_new=    ③

    check_old=a(10)

    If check_old=check_new Then

        Label1.Caption="校验通过。"

    Else

        Label1.Caption="校验不通过! "

    End If

End Sub

①{#blank#}1{#/blank#} ②{#blank#}2{#/blank#} ③{#blank#}3{#/blank#} 

返回首页

试题篮