Jenny’s second day of study
学习第二天,一样的看视频,从基础学习,用作业来练习,巩固今天的知识范围。练习的编程题目啊,真的是…你去看人家的实现方式,觉得,好像也就是那么一回事——so easy,但是自己不看,去试着敲代码的时候——WC,脑袋里面一片浆糊!!!
Take it easy!
弄懂了之后,好像也就是那么一回事吗~~hhhhh
Exercises
第一题:利用 for 循环计算 n!的值。
n =int( input('请输入你的分数:'))
sum=1
for i in range(n):
print(n)
sum*=n
n-=1
print('n!的值是:'+str(sum))
解题思路:n!是指n(n-1)*(n-2)…1,所以第一步要先想怎么让n值输出递减1的每一个数(ps:这个简单,就用for循环,n每次减一就好了;第二步是怎么让他们一个个乘起来,就用一个sum来存储每一个乘积(比如54先存在sum里,再用sum来乘以3)。)*
第二题: 用 2,4,6,8能组成多少个不重复的三位数分别是多少?共有多少个?
n =[2,4,6,8]
sum=0
for a in n:
for b in n:
for c in n:
print(a, b,c)
sum+=1
print('总共有:'+str(sum)+'个')
解题思路:三位数——个位、十位、百位,这三位的数字是从2,4,6,8中随机选取一个的,那就按顺序从小到大的。。。。。百位先取,然后十位,最后个位,三位一层套一层的取,取完之后,打印出来——多次循环执行。
第三题: 用户输入一个数是小球刚开始的高度,每次反弹高度减一半,第10次反弹多高?到第10次落地时一共弹了多少米?
H = int(input('小球的初始高度是:'))
each=[]
for i in range(10):
H=H/2
each.append(H)
print('十次的反弹总高度是:'+str(sum(each)))
print('第十次的反弹高度是:'+str(each[9]))
解题注意: 用列表的方式存取,每一次反弹减半后的高度,然后直接取列表里的第十次(也就是标识位 9);用sum计算列表数字里的总和