组卷题库 > 高中信息技术试卷库
试题详情
小赵同学在某游戏平台中获得虚拟的食物、装备、材料等物品,他们分别有不同的价值, 现游戏平台有兑换机制,即可用多个不同物品换取一个等值的物品(每个物品只能取一样),左图为小赵同学已获得的物品。

如要换取游戏中的物品“破天锤”,需要35个金币,有多种的置换方式,为方便计算以节省时间,小赵同学编写了如下程序,运行界面和代码如下,请在划线处填入合适的代码。

def exchange(t,pricelist):

    n=len(pricelist) stack=[]

    i=0 num=0

    while:

        while t>0 andi<n:

            if t>=int(pricelist[i]): stack. append(i)

               

            i+=1

            if t==0:

                print("取序号为",stack,"的物品")

                num+=1

        if:

            i=stack. pop()

            t+=int(pricelist[i])

       

    if num==0:

        print(" 无方案")

m=int(input("目标置换物品的价值:"))

price=input("已获得物品价值依次是:")

p=price. split(",")      #将输入的内容以“,”作分隔,并转换为列表

print("依次拿取物品序号的方案有:")

exchange(m,p)

知识点
参考答案
采纳过本试题的试卷
教育网站链接