day6-作业
2018-09-30 本文已影响0人
xdxh
1.控制台输入年龄,根据年龄输出不同的提示(例如:老年人,青壮年,成年人,未成年,儿童)
代码
age = int(input('请输入年龄:'))
if age < 12:
print('儿童')
elif age < 18:
print('未成年')
elif age < 25:
print('成年人')
elif age < 40:
print('青壮年')
else:
print('老年人')
测试结果
1.PNG2.计算5的阶乘 5!的结果是
代码
n = 5
product = 1
for x in range(5):
product *= n
n -= 1
print('product=',product)
测试结果
2.PNG3.求1+2!+3!+...+20!的和 1.程序分析:此程序只是把累加变成了累乘。
代码
sum = 0
for num in range(1,21):
product = 1
while num > 0:
product *= num
num -= 1
sum += product
print('sum=',sum)
测试结果
3.PNG4.计算 1+1/2!+1/3!+1/4!+...1/20!=?
代码
sum = 0
for num in range(1,21):
product = 1
while num > 0:
product *= 1/num
num -= 1
sum += product
print(sum)
测试结果
4.PNG5.循环输入大于0的数字进行累加,直到输入的数字为0,就结束循环,并最后输出累加的结果。
代码
sum = 0
num = int(input('请输入一个数:'))
while num >= 0:
if num > 0:
while num > 0:
sum += num
num -= 1
else:
break
num = int(input('请输入一个数:'))
print('累加结果=',sum)
测试结果
5.PNG6.求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22(此时共有2个数相加),几个数相加有键盘控制。 1.程序分析:关键是计算出每一项的值。
代码
number = 0
sum = 0
n = int(input('请输入a的值(1~9):'))
for num in range(1,n+1):
number += n* 10 ** (num-1)
sum += number
print('sum=',sum)
测试结果
6.PNG7. 输入三个整数x,y,z,请把这三个数由小到大输出。
代码
max = 0
middle = 0
min = 0
x = int(input('请输入第1个数:'))
y = int(input('请输入第2个数:'))
z = int(input('请输入第3个数:'))
max = x
min = x
if max < y :
max = y
if max < z:
max = z
elif max < z:
max = z
if min > y :
min = y
if min > z:
min = z
elif min > z:
min = z
if x != min and x != max:
middle = x
elif y != min and y != max:
middle = y
else:
middle = z
print(min,middle,max,sep = ',')
测试结果
7.PNG8.控制台输出三角形
a.根据n的值的不同,输出相应的形状
代码
# n = 5时 n = 4
# ***** ****
# **** ***
# *** **
# ** *
# *
n = int(input('请输入n的值:'))
while n > 0:
print('*' * n)
n -= 1
测试结果
8-a.PNGb.根据n的值的不同,输出相应的形状(n为奇数)
代码
# n = 5 n = 7
# * *
# *** ***
# ***** *****
# *******
m = 1
n = int(input('请输入n的值(n为奇数):'))
while m <= n:
print(('*' * m).center(2*n))
m += 2
测试结果
8-b.PNG9.输出9*9口诀。 1.程序分析:分行与列考虑,共9行9列,i控制行,j控制列。
代码
for i in range(1,10):
for j in range(1,i+1):
print(i,'*',j,'=',i*j,sep='',end=' ')
print('\n')
测试结果
9.PNG10. 这是经典的"百马百担"问题,有一百匹马,驮一百担货,大马驮3担,中马驮2担,两只小马驮1担,问有大,中,小马各几匹?
代码
for big_horse in range(0,101):
for middle_horse in range(0,101):
for small_horse in range(0,101):
if big_horse*3 + middle_horse*2 + small_horse*0.5 ==100 and big_horse+middle_horse+small_horse ==100:
print('大马',big_horse,'匹,中马',middle_horse,'匹,小马',small_horse,'匹',sep='')
测试结果
1.PNG11.我国古代数学家张邱建在《算经》中出了一道“百钱买百鸡”的问题,题意是这样的: 5文钱可以买一只公鸡,3文钱可以买一只母鸡,1文钱可以买3只雏鸡。现在用100文钱买100只鸡,那么各有公鸡、母鸡、雏鸡多少只?请编写程序实现。
代码
for cock in range(0,101):
for hen in range(0,101):
for chick in range(0,101):
if cock*5 + hen*3 + chick*1/3 == 100 and cock + hen + chick ==100 :
print('公鸡',cock,'只,母鸡',hen,'只,雏鸡',chick,'只',sep='')
测试结果
2.PNG12.小明单位发了100元的购物卡,小明到超市买三类洗化用品,洗发水(15元),香皂(2元),牙刷(5元)。要把100元整好花掉,可以有哪些购买结合?
代码
count = 0
for shampoo in range(0,7):
for soap in range(0,51):
for toothbrush in range(0,21):
if shampoo*15 + soap*2 + toothbrush*5 ==100:
count +=1
print('洗发水',shampoo,'瓶,香皂',soap,'块,牙刷',toothbrush,'把',sep='')
print('共有',count,'种购买方法',sep='')