1.控制台输入年龄,根据年龄输出不同的提示
(例如:老年人,青壮年,成年人,未成年,儿童)
age =int (input ('请输入年龄:'))
if age >= 70:
print ('老年人')
elif age >= 30:
print ('青壮年')
elif age >= 18:
print ('成年人')
elif age >= 8:
print ('未成年')
else:
print ('儿童')
2.计算5的阶乘 5!的结果是
n = 1
result = 1
for n in range (1,6):
result *= n
print ('5!的结果是:%d' % (result))
运行
5!的结果是:120
3.求1+2!+3!+...+20!的和
程序分析:此程序只是把累加变成了累乘
各个数的阶乘相加
2!
for x in range (1,2):
num *= x
20!
for x in range (1,20):
num *= x
num = 1
num1 = 0
# 循环取出数字1-20
for y in range (1,21):
# 各个数的
for x in range(1,y+1):
num *= x
else:
num1 += num
num = 1
print(num1)
4..计算 1+1/2!+1/3!+1/4!+...1/20!=?
num1 = 0
num = 1
for y in range (1,21):
for x in range (1,y+1):
# x = 1,num = num*x = 1*(1/1) = 1!
# x = 2,num = num*x = 1*(1/1)*(1/2) = 1/2!
num *= (1/x)
else:
num1 += num
num = 1
print (num1)
运行
1.7182818284590455
5.循环输入大于0的数字进行累加,直到输入的数字为0,就结束循环,并最后输出累加的结果。
循环输入
sum=0
while True:
num = int (input('请输入一个数字:'))
if num >= 0:
sum += num #sum=sum+x
if num == 0:
print(sum)
break
else:
print ('请重新输入')
continue
6.求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。
例如2+22+222+2222+22222(此时共有5个数相加),几个数相加由键盘控制
1.程序分析:关键是计算出每一项的值
num = int (input ('请输入相加个数:'))
###### 取出num个数
n = 2
sum = 0
for x in range (1,num + 1):
# sum == a^1+a^2+a^3+a^4+a^5
sum += n ** x
print (sum)
###### 算出num个数的和
7.输入三个整数x,y,z,请把这三个数由小到大输出。
number1 = int (input ('请输入x:'))
number2 = int (input ('请输入y:'))
number3 = int (input ('请输入z:'))
if number1 > number2:
# x比y大,然后x与z比较
if number1 > number3:
if number2 > number3:
print (number3,number2,number1)
else:
print (number2,number3,number1)
else:
print (number2,number1,z)
else:
if number1 < number3:
if number2 < number3:
print (number1,number2,number3)
else:
print (number1,number3,number2)
else:
print (number3,number1,number2)
8.控制台输出三角形
a.根据n的值的不同,输出相应的形状
n = 5时 n = 4
***** ****
**** ***
*** **
** *
*
n = int (input ('请输入n:'))
# 每排重复输入,
for x in range (1,n+1):
# 要达到倒着排的效果,就用x的最大取值减去x
num = '*' * (n+1-x)
print (num)
# 倒着排列,x的取值范围,大的在前,小的在后,步进减一
for x in range (n,0,-1):
num = '*' * x
print (num)
b.根据n的值的不同,输出相应的形状(n为奇数)
n = 5 n = 7
* *
*** ***
***** *****
*******
n = int (input ('请输入一个奇数:'))
for x in range (1,n+1,2):
num ='*' * x
# 需要在字符串前面加上什么符号,用center填充,达到效果
new_num = num.center (n,' ')
print (new_num)
9.输出9*9口诀
程序分析:分行与列考虑,共9行9列,i控制行,j控制列
每一列或者每一行都是一个循环
for j in range (1,10):
for i in range (1,j+1):
# 先计算出每一行,每一列的结果,表示出计算式
print ('%d x %d = %s' % (j,i,j*i),end = (' '))
# 每个计算循环结束时换行,排列
else:
print ('\n')
运行
1 x 1 = 1
2 x 1 = 2 2 x 2 = 4
3 x 1 = 3 3 x 2 = 6 3 x 3 = 9
4 x 1 = 4 4 x 2 = 8 4 x 3 = 12 4 x 4 = 16
5 x 1 = 5 5 x 2 = 10 5 x 3 = 15 5 x 4 = 20 5 x 5 = 25
6 x 1 = 6 6 x 2 = 12 6 x 3 = 18 6 x 4 = 24 6 x 5 = 30 6 x 6 = 36
7 x 1 = 7 7 x 2 = 14 7 x 3 = 21 7 x 4 = 28 7 x 5 = 35 7 x 6 = 42 7 x 7 = 49
8 x 1 = 8 8 x 2 = 16 8 x 3 = 24 8 x 4 = 32 8 x 5 = 40 8 x 6 = 48 8 x 7 = 56 8 x 8 = 64
9 x 1 = 9 9 x 2 = 18 9 x 3 = 27 9 x 4 = 36 9 x 5 = 45 9 x 6 = 54 9 x 7 = 63 9 x 8 = 72 9 x 9 = 81
10.这是经典的"百马百担"问题,有一百匹马,驮一百担货,大马驮3担,中马驮2担,两只小马驮1担 问有大,中,小马各几匹?
x表示大马,y表示中马,z表示小马
for x in range (1,101):
for y in range (1,101-x):
for z in range (1,101-x-y):
if x + y + z == 100 and 3 * x + 2 * y + (1/2) * z == 100:
print ('大马%d匹,中马%d匹,小马%d匹' % (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只鸡,那么各有公鸡、母鸡、雏鸡多少只?请编写程序实现。
x表示公鸡,y表示母鸡,z表示小鸡
for x in range (1,101):
for y in range (1,101-x):
for z in range (1,101-x-y):
if x + y + z == 100 and (1/3) * z + 3 * y + 5 * x == 100:
print ('公鸡,母鸡,小鸡的数量分别是:%d只,%d只,%d只' % (x,y,z))
运行
公鸡,母鸡,小鸡的数量分别是:4只,18只,78只
公鸡,母鸡,小鸡的数量分别是:8只,11只,81只
公鸡,母鸡,小鸡的数量分别是:12只,4只,84只
12.小明单位发了100元的购物卡,小明到超市买三类洗化用品,洗发水(15元),香皂(2元),牙刷(5元)。 要把100元整好花掉,可如有哪些购买结合?
假设买了x瓶洗发水,y块香皂,z只牙刷
for x in range(1,int (100/15)):
for y in range(1,100-(15*x)):
for z in range (1,100-(15 * x + 2 * y)):
if 15 * x + 2 * y + 5 * z == 100:
print ('洗发水,香皂,牙刷的数量分别是:%d,%d,%d' % (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