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("输入有误,请重新输入一个带有小数点的浮点数:")

posted @ 2025-04-06 21:17  昔桯  阅读(21)  评论(0)    收藏  举报