python编程题
一:题目将一个字符串的内容颠倒过来,并输出,如果有大写字母全部转为小写。str的长度不超过20个字符。
代码:
def shuru():
a=input("请输入一串字符:")
if len(a)>20:
return
else:
return a
def zifu(s):
b=s.lower()
c=b[::-1]
print("倒序出来的字符串:{}".format(c))
if __name__=="__main__":
a=shuru()
if a==None:
print("error:输入的字符超过20个字符")
else:
zifu(a)
运行截图:
二:题目:给定一段连续的整数,求出他们中所有奇数的平方和以及所有偶数的立方和。
代码:
ji=[]
ou=[]
#奇偶数分开
def jiou(a):#判断每一个数值的奇偶性
global ji, ou
if a%2!=0:
ji.append(a)
else:
ou.append(a)
def shu(a):#把一段数字分开
b=[]
for i in range(len(a)):
b.append(int(a[i]))
for i in b:
jiou(i)
def jieguo():
aa=input("请输入一段数字:")
shu(aa)
jihe=0
ouhe=0
for i in ji:
jihe=jihe+i*i
for j in ou:
ouhe=ouhe+j*j*j
print("所有奇数的平方和为:{},所有偶数的和为:{}".format(jihe,ouhe))
jieguo()
运行截图:
算法思想:先把输入的一段数字分开,放到一个列表里面。然后再判断每一个数的奇偶性,分别放到不同的列表中。在分别用不同的列表求平方和和立方和。
三:疫情结束了,计算机本科班65个同学到ktv娱乐一下,大家围了一圈玩个报数游戏,从1号同学开始报数凡是喊到7的同学喝一杯啤酒就离开游戏,下一个重新报数,最终只剩一个同学需要喝下10杯啤酒,这个幸运的同学是几号呢?请编程找出
算法思想:
根据分别判断列表中第一元素是不是第七个同学,如果不是,那么就把这个元素放到列表的后面;如果是,就不放到列表后面。
代码
#输入一个有多少个同学,并将其编号
def binhao():
a=int(input("请输入有多少同学做游戏:"))
aa = []
for i in range(1, a + 1): # 把每一个同学都编上序号
aa.append(i)
return aa
#筛选喝酒的人
def hejiu():
aa=binhao()
count = 0
while True:
if (len(aa)==1): #如果剩下一个人那么就是喝酒的人,并跳出循环
break
else:
frist = aa[0] #把列表的第一个数字提取出来
aa.pop(0) #从列表中移除第一个
count=count+1 #计数器加一
if count==7:#如果叫到七,就剔除
print("喝一杯的人是:{}".format(frist))
count=0 #计数器清0
continue #执行下一次循环
else:#如果没有叫道7则把第一个数放到列表中的最后一位
aa.append(frist)
return aa[0]
print("喝十杯的人是:{}".format(hejiu()))