1.控制台输入年龄,根据年龄输出不同的提示(例如:老年人,青壮年,成年人,未成年,儿童)
age = int(input('请输入年龄:'))
if age <= 0 or age > 150:
print('年龄有误')
elif age < 5:
print('儿童')
elif age <= 18:
print('未成年')
elif age <= 25:
print('青壮年')
elif age <= 50:
print('中年')
else:
print('老年')
2.计算5的阶乘 5!的结果是
sum = 1
for x in range(1,6):
sum *= x
print(sum)
120
3.求1+2!+3!+...+20!的和 1.程序分析:此程序只是把累加变成了累乘。
sum = 0
for x in range(1, 21):
num = x
for y in range(x-1,0,-1):
num *= y
sum += num
print(sum)
sum = 0
x = 1
for i in range(1,21):
x = x * i
sum = sum + x
print(sum)
2561327494111820313
2561327494111820313
4.计算 1+1/2!+1/3!+1/4!+...1/20!=?
sum = 0
x = 1
for i in range(1,21):
x = x * i
sum = sum + 1/x
print(sum)
1.7182818284590455
5.循环输入大于0的数字进行累加,直到输入的数字为0,就结束循环,并最后输出累加的结果。
sum = 0
while True:
n = int(input('请输入一个数:'))
if n !=0:
sum +=n
else:
break
print(sum)
6.求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如
2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。 1.程序分析:关键是计算出每一项的值。
sum1 = 0
a = input('输入数字:')
count = int(input('输入次数:'))
ret = []
for i in range(1,count+1):
ret.append(int(a*i))
print(ret[i-1])
for x in ret:
sum1 += x
print(sum1)
7.输入三个整数x,y,z,请把这三个数由小到大输出。
a = int(input('输入数:'))
b = int(input('输入数:'))
c = int(input('输入数:'))
if a < b :
a ,b = b, a
if a < c:
a , c = c, a
if b < c:
b , c = c, b
print(a,b,c)
8.控制台输出三角形
a.根据n的值的不同,输出相应的形状
n = 5时 n = 4
***** ****
**** ***
*** **
** *
*
n = int(input('输入数:'))
if n >= 1:
for x in range(1,n+1):
print((n-x) *'*')
else:
print('不满足要求')
b.根据n的值的不同,输出相应的形状(n为奇数)
n = 5 n = 7
* *
*** ***
***** *****
*******
n = int(input('输入数:'))
if n >= 1 and n % 2 !=0:
for x in range(1,n+1,2):
for i in range(1,n+1-x,2):
w = ' '
print(w,end="")
print(x *'*')
else:
print('输入有错')
9.输出9*9口诀。 1.程序分析:分行与列考虑,共9行9列,i控制行,j控制列。
for i in range(1,10):
print('\r')
for j in range(1,i+1):
print(j,'X',i,'=',i*j,end=' ')
1 X 1 = 1
1 X 2 = 2 2 X 2 = 4
1 X 3 = 3 2 X 3 = 6 3 X 3 = 9
1 X 4 = 4 2 X 4 = 8 3 X 4 = 12 4 X 4 = 16
1 X 5 = 5 2 X 5 = 10 3 X 5 = 15 4 X 5 = 20 5 X 5 = 25
1 X 6 = 6 2 X 6 = 12 3 X 6 = 18 4 X 6 = 24 5 X 6 = 30 6 X 6 = 36
1 X 7 = 7 2 X 7 = 14 3 X 7 = 21 4 X 7 = 28 5 X 7 = 35 6 X 7 = 42 7 X 7 = 49
1 X 8 = 8 2 X 8 = 16 3 X 8 = 24 4 X 8 = 32 5 X 8 = 40 6 X 8 = 48 7 X 8 = 56 8 X 8 = 64
1 X 9 = 9 2 X 9 = 18 3 X 9 = 27 4 X 9 = 36 5 X 9 = 45 6 X 9 = 54 7 X 9 = 63 8 X 9 = 72 9 X 9 = 81
乘法口诀表
10.这是经典的"百马百担"问题,有一百匹马,驮一百担货,大马驮3担,中马驮2担,两只小马驮1担,问有大,中,小马各几匹?
for x in range(1,101):
for y in range(1,101-x):
z = 100 - x-y
if 3 * x + 2 * y + 0.5 * z == 100:
print(x,y,z)
2 30 68
5 25 70
8 20 72
11 15 74
14 10 76
17 5 78
11.我国古代数学家张邱建在《算经》中出了一道“百钱买百鸡”的问题,题意是这样的: 5文钱可以买一只公鸡,3文钱可以买一只母鸡,1文钱可以买3只雏鸡。现在用100文钱买100只鸡,那么各有公鸡、母鸡、雏鸡多少只?请编写程序实现。
for x in range(1, 20): # 从1开始买公鸡,不包括20
for y in range(1, 33): # 从1开始买母鸡,不包括33
z = 100 - x - y # 计算剩余要买多少个小鸡,小鸡的个数要满足3的倍数
if (z%3 == 0) and (5*x + 3*y + z/3 == 100): # 判断买的计划是否符合条件
print('公鸡:' x,母鸡:',y, '小鸡:'z')
公鸡:4 母鸡:18 小鸡:78
公鸡:8 母鸡:11 小鸡:81
公鸡:12 母鸡:4 小鸡:84
12.小明单位发了100元的购物卡,小明到超市买三类洗化用品,洗发水(15元),香皂(2元),牙刷(5元)。要把100元整好花掉,可如有哪些购买结合?
for x in range(1, 7):
for y in range(1, 51):
for z in range(1, 21):
if 15*x + 2*y + 5*z == 100:
print(x,y,z)
1 5 15
1 10 13
1 15 11
1 20 9
1 25 7
1 30 5
1 35 3
1 40 1
2 5 12
2 10 10
2 15 8
2 20 6
2 25 4
2 30 2
3 5 9
3 10 7
3 15 5
3 20 3
3 25 1
4 5 6
4 10 4
4 15 2
5 5 3
5 10 1