python常用语句练习
目录1 输入两个数,按由从小到大的顺序输出两个数
a=float(input("请输入第一个数: ")) b=float(input("请输入第二个数: ")) if a <= b: print(a,b) else: print(b,a) # 输出结果: ''' 请输入第一个数: 4.5 请输入第二个数: 9 4.5 9.0 '''
2 计算从1 加到100的和
a=0 # 取值为从1..100 for i in range(1,101): # a+=i 等效与 a=a+i a+=i print(a) # 输出结果 ''' 5050 '''
3 计算从1 到10 的阶乘
a=1 for i in range(1,10): a*=i print(a) # 输出结果: ''' 3628800 '''
4 有1020个西瓜,第一天卖掉总数的一半后又多卖出2个, 以后每天卖剩下的一半多2个,问几天以后能卖完
a=0 result=1020 while result > 0: result=result/2-2 a += 1 print(a) #方法二: a=0 result=1020 while True: a+=1 result=result/2-2 if result <=0: break print(a) # 得出结果为8
5 猴子吃桃问题: 猴子第一天找下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。 第二天早上,又将剩下的桃子吃了一半,又多吃了一个。 以后,每天都吃了前一天剩下的一半零一个。 到第十天早上,再想吃时,见只剩一个桃子。 求第一天共摘了多少个
result=1 for i in range(1,10): # 取值1..9,因为一共要往前推9天 result=(result+1)*2 print("猴子第一天一共摘了"+str(result)+"个桃子") # 结果为: 1534
6 有个人想知道,一年之内一对兔子可以繁殖多少对?于是就筑了一道围墙把一对兔子关在里面。 已知,一对兔子每个月可以生一对小兔子,而一对小兔子从出生后第3个月起,每个月生一对小兔子. 假如一年内没有发生死亡现象,那么,一对兔子一年内(12个月)可以繁殖成多少对? 分析:兔子的规律数列为:1,1,2,3,5,8,13,21
从第三个数开始,后面的数都是前面两个数相加值和
a=1 #第一个月 b=1 #第二个月 #取值3..12 for i in range(3,13): result=a+b #使用一个变量接收a+b的值 b=a #前第二个数字 a=result #前第一个数字 print("第12个月共有"+str(result)+"对兔子") # 输出结果为144
7 计算1000以内,所有不能被7整除的整数之和
result=0 for i in range(1,1001): # range函数,左闭右开 if (i%7) != 0: # 除以7取余,余数不为0,则不能被7整除 result+=i print(result) # 输出结果为429429
8 计算1+2-3+4-5+6-7...100 的结果
''' 除了1,加的都是偶数,减的都是奇数 ''' result=1 for i in range(2,101): # 让i取值2..100. 使用取余2,如果结果为0,则为偶数 if i % 2 == 0: result+=i else: result-=i print(result) #结果为52 #方法二: a=0 result1=0 while a <= 100: result1+=a a+=2 print("所有偶数和为"+str(result1)) b=3 result2=0 while b <= 100: result2+=b b+=2 print("除1外,所有奇数和为"+str(result2)) result=result1+1-result2 print("最后结果为:"+str(result)) #结果为52
9 一张纸的厚度大约是0.08mm,对折多少次之后能达到或超过珠穆朗玛峰的高度(8848.13米)
a=float(0.08) result=0 # 当a,也就是纸张厚度小于珠峰高度时,循环条件成立 while a < 8848130: a*=2 #每次循环,纸张厚度都会乘以2 result+=1 #每次循环,对折次数加1 print("对折"+str(result)+"次后可以超过,高度是:"+str(a)) ''' 输出结果为: 对折27次后可以超过,高度是:10737418.24 '''
10 一球从100米高度自由落下,每次落地后反跳回原来高度的一半,再落下 求它在第10次落地时,共经过多少米?第10次反弹多高?
Longth=100 for i in range(1,11): # 球第n次落地弹起的高度,100 除以2的n次方 result=100/(2**i) # 球第一次落地,为100M,第二次落地为第一次落地的反弹高度乘以2.第十次落地后,不用再加2倍的反弹高度 if i < 10: Longth+=(result*2) print("球第十次落地时,共经过"+str(Longth)+"米,第十次的反弹高度是"+str(result)+"米") ''' 输出结果为 球第十次落地时,共经过299.609375米,第十次的反弹高度是0.09765625米 '''
11 每个做父母的都关系自己孩子成人后的身高。 据有关生理卫生与数理统计分析表明,影响小孩成人后升高的因素有遗传,饮食习惯与坚持体育锻炼等 小孩成人后的升高与其父母的升高和自身的性别密切相关 设fa_Height为其父亲升高。mo_Height为其母亲升高,升高预测公式为: 男性成人时身高 = (fa_Height + mo_Height) * 0.54 女性成人时身高 = (fa_Height* 0.923 + mo_Height) / 2 此外,如果喜欢体育锻炼,那么可增加升高2%,如果有良好的卫生饮食习惯,那么可增加升高1.5%. 利用给定的公式和升高预测方法,对你的身高进行预测。 要求父母的身高,是否爱好体育锻炼等参数,从键盘输入
SEX=input("请输入您的性别(男|女):") fa_Height=float(input("请输入您父亲身高:")) mo_Height=float(input("请输入您母亲身高:")) PE=input("您是否爱好锻炼(是|否):") EAT=input("您的饮食习惯是否良好(是|否):") a=1 b=1 if PE == "是": a=1.02 if EAT == "是": b=1.015 if SEX == "男": result=(fa_Height + mo_Height) * 0.54 * a *b else: result=(fa_Height * 0.923 + mo_Height) / 2 * a *b print("您的身高是:"+str(result))