某智慧食堂消费系统的部分功能:食堂内设有多台自助点餐终端,顾客下单后,系统自动计算订单金额,并提供相应的支付方式供顾客选择。顾客完成支付,系统会将订单信息发送至后厨。配餐完成后,系统会通知顾客前往取餐。系统还具备数据分析功能,通过对顾客的消费习惯、菜品销售情况等数据进行分析,帮助食堂管理者了解顾客需求,优化菜品搭配和供应链管理。
a=[30,10,20,11,12,50] d=[0]*6 ; max=0 ; n=len(a) for i in range(1,n): for j in range(i): if a[j]<a[i]: d[i]+=1 if d[i]>max: max=d[i] |
执行程序后,变量max的值是( )
def fun(k): if k==1 : return "1" elifk%2==0: return fun(k- 1)+str(k%2) else: returnstr(k%2)+fun(k- 1) |
执行语句 s=fun(5) ,则 s 的值为( )
s=input() stack=[0]* len(s);top=- 1;presign='+';num=0 for i in range(len(s)): if'0'<=s[i]<='9': num=num*10+int(s[i]) if i==len(s)- 1 or s[i] in'+-*/': if presign=='+': top+=1 stack[top]=num elifpresign=='-': top+=1 stack[top]=-num elifpresign=='*': top+=1 stack[top]=stack[top- 1]*num else: top+=1 stack[top]=stack[top- 1]//num presign=s[i] num=0 print(sum(stack)) #sum 函数对 stack 中所有元素求和 |
若输入'5*4-6+10/3' ,程序运行后, 输出结果是( )
a=[i for i in range(1,7)] b=[0]*6 head, tail=0,0 for i in range(1,7): cnt=1 while cnt<i: a[tail]=a[head] head=(head+1)%6 tail=(tail+1)%6 cnt+=1 b[a[head]- 1]=i head=(head+1)%6 |
执行该程序段后, b[5]的值为( )
图 1 | 图 2 | 图 3 |
f=open("卷 3.txt",encoding="utf-8") line=f.readline().strip() c=0 #strip()用于删除字符串尾部的"\n"换行符 preId=0 QuestionInfo=[ ] |
while line: if line[0] == "【": curId = if curId - preId > 1: for i in range(preId, curId): QuestionInfo.append(str(i)) elif c>0: for i in range(1, c + 1): QuestionInfo.append(str(preId) + "(" + str(i) + ")") c = 0
else:
line=f.readline().strip() #strip()用于删除字符串尾部的"\n"换行符 f.close() print("卷 3 题号划分为: ") for Id in QuestionInfo: print(Id) |
# 导入 Falsk 框架模块及其他相关模块,创建 app 实例,代码略 @app.route('/index') def index(): #从数据库读取近 1 小时获取的传感器编号、温度和湿度组成的二维列表 data,代码略 return render_template('idx.html',data=data) # 服务器其他功能,代码略 if__name__ == '__main__': app.run(port=8000) |
df = pd.read_excel('strawberry.xlsx') name=input("请输入品种") period=input("请输入生长阶段") df=df[df["品种"]==name] df= df[df["生长阶段"]==period] df = df.groupby(" ", as_index = False).mean() # 分组求平均值 plt.title(name+period+"生长表现对比") plt.bar(df.实验组, df.生长表现) # 绘制柱形图 |
①请在程序中划线处填入合适的代码。
②小华要输出每个品种现蕾期生长阶段生长表现最好时的温度湿度,为此他需要修改程序代码,以下操作恰当的是 (多选,填字母)。
A .筛选品种 B .筛选生长阶段 C .根据生长阶段分组,每组按生长表现降序排序,输出每组第一行 D .根据品种分组,每组按生长表现降序排序,输出每组第一行
图 1 | 图 2 |
def sort(): for i in range(3): for j in range(3,i,- 1): if waitlist[index[j]][1] > waitlist[index[j - 1]][1]: index[j], index[j - 1] = index[j - 1], index[j] if waitlist[index[j]][1]==0: return j return 4 waitlist=[[3,6],[4,0],[1,2],[2,4]] # "咖啡 0" 的批量制作时间为 3 分钟,目前待做量为 6,以此类推 q=[[6, 0, 2, 4], [1, 18, 0, 2], [2, 1, 2, 1], [0, 1, 0, 5],…… #如图 1,代码略 #q 保存订单流,第一个订单[6,0,2,4]作为初始订单已计入 waitlist index=[0,1,2,3] y=sort() lnk=[- 1]*4 for i in range(y- 1): #创建降序链表 lnk[index[i]]=index[i+1] p=lnk_h=index[0] print("请制作咖啡"+str(p)) waitlist[p][1]=0 #咖啡 p 进入制作,待做数量回 0 |
defenqueue(order): #order 是一个订单,例如[1,2,0,3] global lnk_h flag.append([0,0,0,0]) #新订单 4 种咖啡未完成 for i in range(4): f = True if waitlist[i][1]==0: f=False if order[i]==0: continue waitlist[i][1]+=order[i] #将订单 order 中的咖啡 i 累加到待制作数量中 cur=lnk_h while cur!=- 1 and waitlist[i][1]<waitlist[cur][1]: pr,cur=cur,lnk[cur] if cur!=i: tmp = lnk[i] lnk[i]=cur if cur==lnk_h: lnk_h=i else: lnk[pr]=i if f: while cur!=i: pr,cur=cur, lnk[cur]
def nextfood(qhead,qtail): #找到下一次要做的咖啡 global lnk_h cur=lnk_h while : pr,cur=cur,lnk[cur] if cur==lnk_h: lnk_h=lnk[lnk_h] elif cur==- 1: return – 1 else: lnk[pr]=lnk[cur] waitlist[cur][1]=0 for i in range( ): if q[i][cur]!=0: flag[i][cur] = 1 return cur qhead,qtail=0,1 order=q[qhead] flag=[[1,0,0,0]] #flag[i][j]=1 标记"订单 i" 中的"咖啡j" 已经在做或已经做完。 lnk_h, time =lnk[lnk_h],0 while True: time=(time+1)%waitlist[p][0] if qtail<len(q): enqueue(q[qtail]) #接新订单 qtail+=1 if time==0: while qhead<qtail- 1 and sum(flag[qhead])+q[qhead].count(0)==4: #订单完成时 qhead+=1 order=q[qhead] p=nextfood(qhead,qtail) if p == - 1 : break print("请制作咖啡"+str(p)) |