《python编程题(23页).doc》由会员分享,可在线阅读,更多相关《python编程题(23页).doc(23页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-1、【参考代码】x=eval(input(请输入所花钱x:)if x=3000: y=0.7*xelif x=2000: y=0.8*xelif x=1000: y=0.9*xelse: y=xprint(实际应付金额:.2f元.format(y)2、 编写计算分段函数的程序: 输入x的值,输出函数y的值【参考代码】import mathx=eval(input(请输入x的值:)if x=5: y=math.sin(x)+math.sqrt(x*2+1)elif x=0: y=math.exp(x)+math.log(x,5)+x*(1/5)else: y=math.cos(x)-x*3+3
2、*xprint(分段函数y的值是:,y)3、编写程序,实现分段函数计算,如下表所示。当x=7,输出y的值【参考代码】x = input(Please input x:)x = eval(x)if x=20: print(0)elif 0=x5: print(x)elif 5=x10: print(3*x-5)elif 10=x0: q=math.sqrt(delta)/(2*a) p=-b/(2*a) x1=p+q x2=p-q print(两个不相等的实根,x1,x2) elif delta=0: p=-b/(2*a) print(两个相等的实根:,p) else: print(方程无解!)
3、6、编程产生菲波拉契数列20项,例如:0 1 1 2 3 5 8 13 21 【参考代码】x0,x1=0,1for n in range(0,20): print(x0,end= )x0,x1=x1,x0+x17、猴子摘桃猴子第一天摘了若干个桃子,当天吃了一半,还不过隐,有多吃了一个,第二天早上又将剩下的桃子吃了一半,又多吃了一个,以后每天早上都吃了前一天剩下的一半零一个,到第10天早上想再吃时,见只剩下一个桃子,问第一天共摘了多少个桃子【参考代码】x=1for d in range(0,9): x=(x+1)*2print(x)8、 编程分别计算100以内(含100)奇数与偶数的和。【参考代
4、码】s1,s2=0,0for i in range(1,101): if i%2=0: s2=s2+i else: s1=s1+iprint(奇数的和是:,偶数的和是:.format(s1,s2)9、编程计算前30项的和:s=1+(1+2)+(1+2+3)+(1+2+3+4)+(1+2+3+4+n)【参考代码】t,sum=0,0for i in range(1,31): t = t + i sum = sum + tprint(多项式前30项的和是:,sum)10、一个富翁试图与陌生人做一笔换钱生意,换钱规则为:陌生人每天给富翁10万元钱,直到满一个月(30天);而富翁第一天给陌生人1分钱,第
5、2天给2分钱,第3天给4分钱,富翁每天给穷人的钱是前一天的两倍,直到满一个月,分别显示富翁给陌生人的钱和陌生人给富翁的钱各是多少?【参考代码】x0=0.01s =0for i in range(1,31): s=s+100000 x1=2 * x0 x0=x1print(富翁赚的钱:.2f,陌生人赚的钱:.2f.format(s,x0)11、编写程序,运行后用户输入4位整数作为年份,判断其是否为闰年。如果年份能被400整除,则为闰年;如果年份能被4整除但不能被100整除也为闰年。【参考代码】x = input(Please input an integer of 4 digits meanin
6、g the year:)x = eval(x)if x%400=0 or (x%4=0 and not x%100=0): print(Yes)else: print(No)12、一小球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在 第10次落地时,共经过多少米?第10次反弹多高?【参考代码】s=100h0=100for i in range(1,10): h1=h0/2 s=s+2*h1 h0=h1print(小球一共经过了:.2f米,第10次的高度:.2f米.format(s,h0)13、 求阶乘 :从键盘输入任意一个正整数,编程计算该数的阶乘 如:输入5,阶乘结果1
7、20 。【参考代码】n=eval(input(请输入一个正整数:)p=1for i in range(1,n+1): p=p*iprint(n!=,p)14、【参考代码】for i in range(1,10): for j in range(1,i+1): print(*=:2d .format (i,j,i*j),end= ) print()15、【参考代码】for a in range(0,21): for b in range(0,34): for c in range(0,101): if a+b+c=100 and a*5+b*3+c/3=100: print(a,b,c)16、1
8、7、turle库绘制红色线条的六边形,线条大小5像素,每边长度80。【参考代码】import turtleturtle.pensize(5)turtle.pencolor(red)for i in range(6): turtle.fd(80)turtle.left(60)18、19、编写一个程序,接受逗号分隔的单词序列作为输入,按字母顺序排序后按逗号分隔的序列打印单词。假设向程序提供以下输入:without,hello,bag,world则输出为:bag,hello,without,worldx=input(x=) l=x.split(,) l.sort() print(,.join(l)
9、20、编写一个程序来计算输入中单词的频率。 按字母顺序对键进行排序后输出。假设为程序提供了以下输入:New to Python or choosing between Python 2 and Python 3 Read Python 2 or Python 3然后,输出应该是:2:23:2New:1Python:5Read:1and:1between:1choosing:1or:2to:1x=input(x=) l=x.split() d= for i in l: di=d.get(i,0)+1 l2=sorted(d) for i in l2: print(:.format(i,di)21
10、、依次输入三个整数放在一个列表中,请把这三个数由小到大输出。l=for i in range(3): x=int(input(x=) l.append(x)l.sort()for i in l: print(i,end= )22、使用列表生成式方法求解百钱买百鸡问题。假设大鸡5元一只,中鸡3元一只,小鸡1元三只,现有100元钱想买100只鸡,有多少种买法?l=(i,j,k) for i in range(0,100) for j in range(0,100) for k in range(0,100) if i+j+k=100 and 5*i+3*j+k/3=100for i in l:pr
11、int(i)23、使用给定的整数n,编写一个程序生成一个包含(i, i*i)的字典,该字典包含1到n之间的整数(两者都包含)。然后程序应该打印字典。假设向程序提供以下输入:8则输出为:1:1,2:4,3:9,4:16,5:25,6:36,,7:49,8:64n=eval(input(n=)d=for i in range(1,n+1): di=i*iprint(d)24、使用列表生成式随机产生10个两位的正整数,存入列表ls中,输出ls中的这10个随机数,然后对这10个随机数求平均值,并输出统计高于平均值的数有多少个。from random import *ls=randint(10,99)
12、for i in range(10)print(ls)aver=sum(ls)/len(ls)n=0for i in ls: if iaver: n=n+1print(n)25、编写一个程序,输出2000到3200(含2000和3200)之间所有是7的倍数,但不是5的倍数的整数。要求:用列表保存符合条件的整数,输出结果各整数之间用逗号分隔,并输出在一行上。l=for i in range(2000,3201): if i%7=0 and i%5!=0: l.append(str(i)print(,.join(l)26、编写一个程序,接收一系列单个空格分隔的单词作为输入,在删除所有重复的单词并按
13、字母升序排序后打印这些单词。假设向程序提供以下输入:hello world and practice makes perfect and hello world again则输出为:again and hello makes perfect practice worldx=input(x=)l=x.split()s=set(l)l2=list(s)l2.sort()for i in l2:print(i,end= )27、编写一个接收句子并计算字母和数字的程序。假设为程序提供了以下输入:Hello world! 123然后,输出应该是:字母10数字3d=字母:0,数字:0x=input(x=)
14、for i in x: if i.isdigit(): d数字=d数字+1 elif i.isalpha(): d字母=d字母+1for k,v in d.items(): print( .format(k,v)28、使用列表生成式来求列表中的每个奇数。 该列表由一系列逗号分隔的数字输入。假设为程序提供了以下输入:1,2,3,4,5,6,7,8,9然后,输出应该是:1,3,5,7,9【参考代码】:l=eval(input(l=)l2= i for i in l if i%2=1print(l2)29、编写函数,模拟Python内置函数sorted()。【参考代码】def Sorted(v): t = v: r = while t: tt = min(t) r.append(tt) t.remove(tt)return r30、编写函数,判断一个数字是否为素数,是则返回字符串YES,否则返回字符串NO。【参考代码】def IsPrime(n): for i in range(2,n): if n%i=0: return No else: return Yes第 23 页-