一、实操题
1、在编写抽奖程序时,为了保证一个人只有一次中奖机会,要检查新抽出来的数字是不是已经被抽中过了。 一种办法是将已经中过奖的人员编号存放在test_list里面,然后每抽出一个新的人员编号,判断它是否在中奖人员列表中。 如果没有在中奖人员列表中,说明中奖号码有效,并将它保存进中奖人员列表;如果已经在里面了,就再生成一个新的人员编号。 请你补全下面的代码,实现判断一个数字是否在列表中的功能。
正确答案:
略
2、乘法运算等于多个加法运算的和。比如,3×2可以理解为3+3,也可以理解为2+2+2 。 下面的程序使用递归算法演示了计算两个自然数的乘积的过程。请你补全代码。 输入:分两次输入自然数num1,num2 输出:num1 × num2 = 乘积
正确答案:
略
3、外卖送餐服务越来越受到人们的喜爱,外卖小哥们也成了路上的一道风景。 当顾客使用外卖软件点餐时,会出现一个预计送达时间,包括了餐厅制作食物的时间,路上的骑行时间等等。 一种常用的计算路上骑行时间的方法是用曼哈顿距离(manhatton distance)除以平均骑行速度。平面上点A(x1,y1)与点B(x2,y2)的曼哈顿距离为:|x1-x2|+|y1-y2|。 假设一名外卖小哥的平均骑行速度为30km/h。下面的程序模拟计算外卖小哥的路上骑行时间,请你补充完整。 输入:分两次输入A点和B点的坐标值 输出:A、B两点间的曼哈顿距离和路上骑行时间。
正确答案:
略