题目一:给定两个数求余数
给定的2个参数 num1 num2 比大小考虑情况
1.两个数相等 num1==num2 直接判断余数为0
2.除数大于被除数 num1<num2 直接判断被除数为余数
3、除数不能为0
4、被除数大于除数 乘法循环计算比较
def quyu(num1,num2): if num1==num2: print('余数是0') #两个数相等时余数为0 elif num1<num2: print('余数是:'+str(shu)) #除数大于被除数时 被除数直接是所得的余数 elif num2==0: print('除数不能为0') #判断除数不能输入为0 else: for i in range(0,num1): if num1-i*num2>num2: i+=1 elif num1-i*num2 ==num2: print('余数是0') break elif num1-i*num2==0: print('余数是0') break else: print("余数结果:"+str(num1-i*num2)) break quyu(10,3)
题目二:现有两个元组,元组A ( (5, 7) , (18, 20) , (35, 37), (56, 58) ),元组B (6, 15, 47, 57, 86) 要求你用Python代码统计元组B中的数字落入A中区间的个数(此面试题来源慧测公众号)
A= ( (5, 7) , (18, 20) , (35, 37), (56, 58) ) B=(6, 15, 47, 57, 86) count=0 for b in B: #将元组B中的元素依次迭代 for a in A: #将元组A中的元素依次迭代,每组元素依然是个小的元组 if b in range(a[0],a[1]+1): #判断B组中元素b是否在range()f范围 range(n1,n2)表示的范围【n1,n2) count+=1 #计数加1 print("区间内的个数:"+str(count))
题目三:对列表倒叙输出,不使用reverse实现
list1=[1,6.7,8,'a','hh',5] #示例元素 new_list=[] #存放目标结果 i=len(list1)-1 #获取最后一个元素的下标 while i >=0: #从最后一个下标开始循环 new_list.append(list1[i]) #将最后一个元素存放在目标列表 i-=1 #下标前移 print(new_list)
题目四:定义一个函数,实现整数列表中偶数在左边,奇数在右边(不借助其他列表)
1、判断列表中的元素是否有两个以上
2.元素较多的时候依次迭代 判断该元素是否为偶数,若为偶数就将原来该位置的元素移除,并将该元素添加在列表的第一个位置上
def userlist(add_list): if type(add_list)==list: #判断是否为list类型 if len(add_list)==1 and type(add_list[0])=='int': #list长度如果为1 直接返回 return add_list else: #list 长度如果大于1 ,进行奇偶数判断并且偶数插在第一个 for item in add_list: #依次迭代list中的元素 if item%2==0: #判断是否为偶数 add_list.remove(item) #如果该元素为偶数,直接将该位置的元素移除 add_list.insert(0,item) #将该元素添加在第一个位置上去 return add_list #迭代完成后返回所有的list元素 else: return False #非list类型直接返回false list1=[1,2,4,5,6,3,7,33] print(userlist(list11))