25.1.6 python基础程序练习

23. 暂停后输出

暂停一段时间后输出

import time

time.sleep(2) # 停顿2秒后输出

print('hello world')

24. 成绩if语句

利用条件运算符的嵌套来完成此题;学习成绩>=90分的同学用A表示,60-89分的用B表示,60以下用C表示

a = int(input('请输入成绩:'))

if a >= 90:
    print('A')
elif 60 <= a <90:
    print('B')
else:
    print('C')

25. 统计字符

输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数

str1 = str(input('请输入一行字符:'))

char_count = 0
number_count = 0
space_count = 0
other_count = 0

for i in str1:
    if i.isalpha():
        char_count += 1
    elif i.isdigit(): # isdigit()用于判断是否为数字,是则返回true否则false
        number_count += 1
    elif i.isspace(): # isspace()用于判断是否为空格,是则返回true否则false
        space_count += 1
    else:
        other_count += 1

print(f'英文字符有{char_count}个,数字有{number_count}个,空格有{space_count}个,其他字符有{other_count}个')

26. 落体反弹问题

一颗球从100米高度自由落下,每次落地后反跳回原高度的一半,再落下,求在第10次落地时,共经过多少米?第10次反弹多高?

n = 100
count = 0 # 反弹次数
list = []

#while循环
while count < 10:
    if count == 0:
        list.append(n)
        print(f'第0次落地时经过了{n}米')
        n /= 2
        count += 1
    else:
        list.append(2*n)
        print(f'第{count}次落地时经过了{2*n}米')
        n /= 2
        count += 1
print(list)
print("经过的总路程:", sum(list))
print("第10次反弹的高度:", n)

#for循环
count1 = 10
list1 = []
n1 = 100

for count1 in range(count1):
    if count1 == 0:  # 第一次落地
        list1.append(n1)
        print(f"第{count1}次落地时经过了{n1}米")
    else:  # 之后每次反弹的两段路程
        list1.append(2 * n1)
        print(f"第{count1}次落地时经过了{2 * n1}米")
    n1 /= 2  # 高度减半

print("经过的总路程:", sum(list1))
print("第10次反弹的高度:", n1)

27. 猴子吃桃问题

猴子第一天摘下若干个桃子,当即吃了一半,还不够过瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上再想吃时,就只剩下一个桃子了,求问第一天一共摘了几个桃子

n = 1
for i in range(1,10):
    total = (n + 1) *2 #头一天的量,相当于从第10天倒推
    n = total #赋值给头一天的初始量
print(total)

你可能感兴趣的:(python)