python题目小练习(多看看,多敲敲,一年一个小目标)

1、有1020个西瓜,第一天卖掉总数的一半后又多卖出两个,以后每天卖剩下的一半多两
个,问几天以后能实完?
x=1020
d=0
while x>0:
d += 1
num=num/2-2
print(str(d)+"天可以卖完")
2、猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一
个,第二天早上又将剩下的桃子吃了一半,又多吃一个,以后每天都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子。求第一天共摘了多少个?
sum=1
for i in range(9):
sum=(sum+1)*2
print("第一天拿了多少个"+str(sum)+"桃子")
3、有个人想知道,一年之内一对兔子能繁殖多少对?于是就筑了一道围墙把一对兔子关在
里面。已知一对兔子每个月可以生一对小兔子,而一对兔子从出生后第3个月起每月生一对小兔子。假如一年内没有发生死亡现象,那么,一对兔子一年内(12个月〉能繁殖成多少对?分析:兔子的规律为数列,1,1,2,3,5,8,13,21
t=1#前一个月
t1=1#后一个月
for i in range(3,13):
sum=t+t1
t=t1
t1=sum
print(sum)
4、计算1000以内所有不能被7整除的整数之和
s=0
for i in range(1,1001):
s=s+i
if i % 7 !=0:
print(s)
5、计算1+2-3+4-5+6-7....+100的结果//注意审题
sum=1
for i in range(2,101):
if i%2==0:
sum+=i
else:
sum=sum-i
print(sum)
6、一张纸的厚度大约是0.08mm,对折多少次之后能达到或超过珠穆朗玛峰的高度(8848.13米)
#0.08mm的纸对折超过8848.13米,注意单位
paper=0.08
mouth=8848130
c=0
while paper<mouth:
paper=paper*2
c+=1
print("对折过"+str(c),"纸的厚度达到"+str(paper))
7、一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10
次落地时,共经过多少米?第10次反弹多高
h=100
for i in range(1,11):
c=100/(2**i)
if i<10:
h=h+(c*2)
print("第十次经过:",h)
print("第十次反弹:",c)
8、每个做父母的都关心自己孩子成人后的身高,据有关生理卫生知识与数理统计分析表明,影响小孩成人后身高的因素有遗传、饮食习惯与坚持体育锻炼等。小孩成人后的身高与其父母的身高和自身的性别密切相关。
设faHeight,为其父身高,moHeight.为其母身高,身高预测公式为:男性成人时身高=(faHeight + moHeight) * 0.54
女性成人时身高=(faHeight * 0.923 + moHeight) / 2
此外,如果喜爱体育锻炼,那么可增加身高2%,如果有良好的卫生饮食习惯,那么可增加身高1.5%。利用给定公式和身高预测方法对你的身高进行预测。
要求父母的身高、是否爱好体育锻炼等参数从键盘输入
faHeight=float(input("父亲的身高是多少:"))
moHeight=float(input("母亲的身高多少:"))
s=str(input("请输入你的性别:"))
a=str(input("是否爱好体育锻炼:"))
b=str(input("有良好的卫生饮食习惯:"))
n=0 #男
l=0 #女
if s=='':
n=(faHeight + moHeight) * 0.54
if a=='yes' or '':
n=(n*1.02)
if b=='yes' or '':
n=(n*1.015)
print("你的性别:"+str(s)+"你的身高:"+str(n))
elif s=='':
l=(faHeight * 0.923 + moHeight)/2
if a=='yes' or '':
l=(l* 1.02)
if b=='yes' or '':
l=(l * 1.015)
print("你的性别:"+str(s)+"你的身高:"+str(l))
题目:
1到100的偶数和
sum=0
a=1
while a<=100:
if a%2:
sum+=a
a+=1
print("1100的偶数和"+str(sum))
 
#100到999的水仙花数
for i in range(100,1000):
ge=i%10
shi=i//10%10
bai=i//100
if ge*ge*ge+shi*shi*shi+bai*bai*bai==i:
print(i)
 
#2-100的所有素数
for x in range(2,101):
#print(x)
for y in range(2,x+1):
if x==y:
print("素数:"+str(x))
break
if x%y==0 and x!=y:
break


posted @ 2022-01-14 22:09  十一没有撤退可言!  阅读(553)  评论(0编辑  收藏  举报