week6 homework
4.1猜数字程序的扩展
点击查看代码
#GuessANumMore.py
target = 425
guess = 0
n = 0
while guess != target:
guess = eval(input("请输入一个猜测的整数(1至1000):"))
n += 1
if guess != target:
if guess > target:
print("猜大了")
else:
print("猜小了")
print("猜测的次数为:{}".format(n))
else:
print("猜对了")
print("猜测的次数为:{}".format(n))
4.2 不同字符的统计
点击查看代码
str = input("")
is_char = 0
is_num = 0
is_space = 0
for i in str:
if i.islower() or i.isupper():
is_char += 1
elif i.isdigit():
is_num += 1
elif i.isspace():
is_space += 1
print("英文字符的个数是:", is_char)
print("数字的个数是:", is_num)
print("空格的个数是:", is_space)
4.3 最大公约数计算
点击查看代码
def gcm(a,b):
while b:
a = b
b = a % b
return a
def lcm(a,b):
return (a*b)//gcm(a,b)
a = int(input())
b = int(input())
print("{}与{}的最大公约数为{}".format(a,b,gcm(a,b)))
print("{}与{}的最小公倍数为{}".format(a,b,lcm(a,b)))
4.4 猜数游戏续
点击查看代码
#GuessANumRandom.py
from random import randint
target = randint(1,1000)
guess = 0
n = 0
while guess != target:
guess = eval(input("请输入一个猜测的整数(1至1000):"))
n += 1
if guess != target:
if guess > target:
print("猜大了")
else:
print("猜小了")
print("猜测的次数为:{}".format(n))
else:
print("猜对了")
print("猜测的次数为:{}".format(n))
4.5 猜数游戏续2
点击查看代码
#GuessANumRandomMore.py
from random import randint
target = randint(1,1000)
guess = 0
n = 0
while True:
try:
while guess != target:
guess = int(input("请输入你猜的数字:"))
n += 1
if guess > target:
print("猜大了!")
elif guess < target:
print("猜小了!")
else:
print("猜对了!")
print("猜测的次数为:{}".format(n))
break
except ValueError:
print("输入内容必须为整数!")
4.6 闰年计算
点击查看代码
def is_goodyear(year):
if year % 4 == 0:
if year % 100 == 0:
if year % 400 == 0:
return True
else:
return False
else:
return True
else:
return False
year = eval(input("请输入年份:"))
if is_goodyear(year):
print(year, "是闰年")
else:
print(year, "不是闰年")
4.7 整数合规输入
点击查看代码
num = input("请输入一个全数字的十进制整数:")
while True:
try:
num = int(num)
break
except ValueError:
num = input("输入有误,请重新输入一个全数字的十进制整数:")
print("十进制数为:", num)
4.8 小数合规输入
点击查看代码
num = input("请输入一个带有小数点的浮点数:")
def is_float(num):
if '.' in num:
return True
else:
return False
while True:
if not is_float(num):
num = input("输入有误,请重新输入一个带有小数点的浮点数:")
else:
try:
num == float(num)
print("浮点数为:", num)
break
except ValueError:
num = input("输入有误,请重新输入一个带有小数点的浮点数:")