python编程经典例题(python语言编程题经典100例)
关于python程序设计题的题库?
1、average_sum函数的功能为求一批数中大于平均值
sum=0
k=0
for i in range(n):
sum=sum+a[i]
average=sum/n
for i in range:
if(a[i]average):
k=k+a[i]
return k
2、编写函数fun求一个不多于五位数的正整数的位数
if(m9999):
place=5
elif(m999):
place=4
elif(m99):
place=3
elif(m9):
place=2
else:
place=1
return place
3、请编fun函数,求4*4整形数组的主对角线元素的和
sum=0.0
for i in range(4):
sum+=a[i][i]
return sum
4、已知:一元钱一瓶汽水,喝完后两个空瓶换一瓶汽水。问:请输入钱数(大于1的正整数),则根据钱数最多可以喝到几瓶汽水。
s=0
k=0
while m0:
m=m-1
s=s+1
k=k+1
while k=2:
k=k-2
s=s+1
k=k+1
return s
5、编写函数fun(x,y),函数的功能是若x、y为奇数,求x到y之间的奇数和;若x、y为偶数,则求x到y之间的偶数和。要求必须使用for结构。
主函数的功能是分别计算如下的值:
(1+3+5+……+777)+(2+4+6+……+888)=???
(1+3+5+……+1111)+(2+4+6+……+2222)=???
(1+3+5+……+1999)+(2+4+6+……+1998)=???
s=0
for i in range(x,y+1,2):
s=s+i
return s
6、编写函数main 求3!+6!+9!+12!+15!+18!+21!
s=0
for i in range(3,22,3):
r=1
for j in range(1,i+1):
r*=j
s+=r
print(s)
python的题?
(1) 以下是Python代码实现:
a = 2
b = 3
S = "ABCDEFGHI]K"
# a. 8*3*6/2
result_a = 8 * 3 * 6 / 2
print("a. 8*3*6/2 =", result_a)
# b. 7/6*3.2/2.15*(5.5+3.5)
result_b = 7 / 6 * 3.2 / 2.15 * (5.5 + 3.5)
print("b. 7/6*3.2/2.15*(5.5+3.5) =", result_b)
# c. 72 or 49
result_c = 7 2 or 4 9
print("c. 72 or 49 =", result_c)
# d. 5+(a+b)*2
result_d = 5 + (a + b) * 2
print("d. 5+(a+b)*2 =", result_d)
# e. 8e3 * ln(2)
import math
result_e = 8 * math.exp(3) * math.log(2)
print("e. 8e3 * ln(2) =", result_e)
# f. Mid(S,3,4)
result_f = S[2:6]
print("f. Mid(S,3,4) =", result_f)
输出结果为:
a. 8*3*6/2 = 72.0
b. 7/6*3.2/2.15*(5.5+3.5) = 6.137944785276073
c. 72 or 49 = True
d. 5+(a+b)*2 = 17
e. 8e3 * ln(2) = 36481.02476300762
f. Mid(S,3,4) = CDEF
(2) 执行以下语句:
x = 22
y = x
print(id(x), id(y))
输出结果为:
140719690724896 140719690724896
这表示变量x和y的内存地址相同,即它们指向同一个对象。这是因为Python对于小整数对象(-5~256)进行了缓存,所以在这个范围内的整数变量都指向同一个对象,所以它们的内存地址相同。
一道简单的python编程题?
按照题目要求编写的哥德巴赫猜想的Python程序如下
def IsPrime(v):
if v=2:
for i in range(2,v//2+1):
if v%i==0:
? return False
else:
return True
else:
return False
n=int(input("输入一个正偶数:"))
if n2 and n%2==0:
for i in range(1,n//2+1):
if IsPrime(i)==True and IsPrime(n-i)==True:
print("%d=%d+%d" %(n,i,n-i))
else:
print("输入数据出错!")
源代码(注意源代码的缩进)
Python编程题求助
该答案为组合数学中著名的卡特兰数,其通式为C(2n,n)-C(2n,n-1)
这里采用递推关系求解,即动态规划的方法
设n对父子有d[n]种出场策略,注意初值d[0]=1
因为每个孩子前面必有一个父亲与之对应
对于i对父子,遍历第j个孩子,该孩子前面有j-1个孩子,对应d[j-1]种出场策略
后面有i-j个孩子,对应d[i-j]种出场策略,则d[i]+=d[j-1]*d[i-j],最终d[n]即为所求
python代码如下:
n = int(input())
d = [0] * (n+1)
d[0] = 1
for i in range(n+1):
? for j in range(i+1):
? ? ? d[i] += d[j-1] * d[i-j]
print(d[n])
运行结果如下:
望采纳~
python的题目?
1.将列表的元素按逆序重新存放。
my_list = [1, 2, 3, 4, 5]
my_list.reverse() # 将列表元素反转
print(my_list) # 输出反转后的列表
2.将列表中的偶数变成其平方值,奇数保持不变。
my_list = [1, 2, 3, 4, 5]
for i in range(len(my_list)):
if my_list[i] % 2 == 0: # 如果元素是偶数
my_list[i] = my_list[i] ** 2 # 将元素平方
print(my_list) # 输出更改后的列表
3.生成包含100个100以内的随机正整数的元组,统计每个数出现的次数。
生成包含100个100以内的随机正整数的元组,统计每个数出现的次数。
4.输入5X5的矩阵a,完成下列要求:a.输出矩阵ab.将第2行和第5行元素对调后,再重新输出a
# a.
a = [[1, 2, 3, 4, 5],
[6, 7, 8, 9, 10],
[11, 12, 13, 14, 15],
[16, 17, 18, 19, 20],
[21, 22, 23, 24, 25]]
for row in a:
print(row) # 每行输出矩阵
# b.
a[1], a[4] = a[4], a[1] # 将第2行和第5行元素对调
# c.
for row in a:
print(row) # 重新输出矩阵
5.创建由星期一到星期日的7个值组成的字典,输出键列表、值列表和键值列表。
days_of_week = {
"Monday": 1,
"Tuesday": 2,
"Wednesday": 3,
"Thursday": 4,
"Friday": 5,
"Saturday": 6,
"Sunday": 7
}
keys = list(days_of_week.keys()) # 将字典键转换为列表
values = list(days_of_week.values()) # 将字典值转换为列表
key_values = list(days_of_week.items()) # 将字典键值对转换为列表
print("Keys:", keys) # 输出键列表
print("Values:", values) # 输出值列表
print("Key-Values:", key_values) # 输出键值列表
6.输入10名学生的姓名和成绩,输出其最高分和最低分。要求使用字典存放学生的姓名和成绩。
my_dict = {}
for i in range(10):
name = input("Enter student name: ") # 输入学生姓名
score = int(input("Enter student score: ")) # 输入学生成绩
my_dict[name] = score # 将学生姓名和成绩存入字典
highest_score = max(my_dict.values()) # 获取最高成绩
lowest_score = min(my_dict.values()) # 获取最低成绩
print("Highest score: ", highest_score) # 输出最高成绩
print("Lowest score: ", lowest_score) # 输出最低成绩
7.随机产生10个[0,10]范围的整数,分别组成集合A和集合B。输出集合A、集合B的内容、长度以及他们的并集、交集和差集。
import random
A = set(random.sample(range(11), 10)) # 随机从0到10范围内选取10个不重复的整数,将其作为集合A的元素
B = set(random.sample(range(11), 10)) # 随机从0到10范围内选取10个不重复的整数,将其作为集合B的元素
print("Set A: ", A) # 输出集合A
print("Set B: ", B) # 输出集合B
print("Length of A: ", len(A)) # 输出集合A的长度
print("Length of B: ", len(B)) # 输出集合B的长度
print("Union of A and B: ", A.union(B)) # 输出集合A和集合B的并集
print("Intersection of A and B: ", A.intersection(B)) # 输出集合A和集合B的交集
print("Difference of A and B: ", A.difference(B)) # 输出集合A和集合B的差集