【Python】控制语句

1、运用python的控制语句if elif else

2、回顾输入输出函数的使用

3、使用random函数得到随机数

4、运用python的循环语句

5、熟悉了埃筛法找素数

6、练习了数组和参数传递


1、从键盘接收整数的一百分制成绩(0~100),要求输出其对应的成绩等级A~E。其中,90分(包含)以上为A,80~89(均包含)分为B,70~79(均包含)分为C,60~69(均包含)分为 D,60分以下为E。

(1)源代码:

score = int(input("请输入您的成绩(0~100): "))

if not 0 <= score <= 100:
    print("输入的成绩不在有效范围内(0~100),请重新输入。")
else:
    if score >= 90:
        grade = 'A'
    elif score >= 80:
        grade = 'B'
    elif score >= 70:
        grade = 'C'
    elif score >= 60:
        grade = 'D'
    else:
        grade = 'E'

    print("您的成绩等级为:", grade)

(2)运行结果截图 :

2、编写程序,根据输入的长和宽,计算矩形的面积并输出。

(1)源代码:

import random

# 预设一个0~9之间的整数
target_number = random.randint(0, 9)

# 初始化一个变量来记录用户是否猜中
guessed_correctly = False

# 循环直到用户猜中数字
while not guessed_correctly:
    # 获取用户输入
    guess = int(input("请猜一个0~9之间的整数:"))

    # 检查用户猜测是否正确
    if guess == target_number:
        guessed_correctly = True
        print("恭喜!你猜中了!")
    elif guess > target_number:
        print("太大")
    else:
        print("太小")

(2)运行结果截图 :

3、某电商平台上销售不同规格包装、不同价格的水笔。编写程序,在不考虑运费的情况下,从键盘分别输人两种水笔的包装和价格,分别计算单根水笔的价格,根据价格就低原则打印输出选择购买哪种产品。

(1)源代码

# 从键盘接收第一种水笔的包装和价格
packaging1 = int(input("请输入第一种水笔的包装数量(支):"))
price1 = float(input("请输入第一种水笔的总价格(元):"))

# 计算第一种水笔的单根价格
single_price1 = price1 / packaging1

# 从键盘接收第二种水笔的包装和价格
packaging2 = int(input("请输入第二种水笔的包装数量(支):"))
price2 = float(input("请输入第二种水笔的总价格(元):"))

# 计算第二种水笔的单根价格
single_price2 = price2 / packaging2

# 根据价格就低原则,选择购买哪种产品
if single_price1 < single_price2:
    print(f"推荐购买第一种水笔,单根价格为:{single_price1:.2f}元")
else:
    print(f"推荐购买第二种水笔,单根价格为:{single_price2:.2f}元")

(2)运行结果截图

4、输出1000以内的素数以及这些素数之和(素数,是指除了1和该数本身之外,不能被其他任何整数整除的数)。

(1)源代码

def sieve_of_eratosthenes(n):
    primes = [True] * (n + 1)
    primes[0] = primes[1] = False
    p = 2
    while p * p <= n:
        if primes[p]:
            for i in range(p * p, n + 1, p):
                primes[i] = False
        p += 1
    return [num for num, is_prime in enumerate(primes) if is_prime]


def prime_sum(n):
    primes = sieve_of_eratosthenes(n)
    prime_sum = sum(primes)
    print("1000以内的素数有:", primes)
    print("这些素数之和为:", prime_sum)


prime_sum(1000)

   (2)运行结果截图

5、输人一个时间(小时:分钟:秒),输出该时间经过5分30秒后的时间。

(1)源代码

def add_time(hours, minutes, seconds, add_minutes=5, add_seconds=30):
    # 将输入的时间转换为总秒数
    total_seconds = hours * 3600 + minutes * 60 + seconds

    # 将要添加的时间转换为秒
    additional_seconds = add_minutes * 60 + add_seconds

    # 计算新的总秒数
    new_total_seconds = total_seconds + additional_seconds

    # 将新的总秒数转换回小时、分钟和秒
    new_hours = new_total_seconds // 3600
    new_minutes = (new_total_seconds % 3600) // 60
    new_seconds = new_total_seconds % 60

    # 返回新的时间
    return new_hours, new_minutes, new_seconds

input_hours = int(input("请输入小时数: "))
input_minutes = int(input("请输入分钟数: "))
input_seconds = int(input("请输入秒数: "))

# 计算新的时间
new_hours, new_minutes, new_seconds = add_time(input_hours, input_minutes, input_seconds)

# 输出新的时间
print(f"经过5分30秒后的时间是: {new_hours}小时 {new_minutes}分钟 {new_seconds}秒")

 (2)运行结果截图

6、计算

(1)源代码

def find_max_n(limit):
    n = 1
    s = 0
    results = []
    while s <= limit:
        s += n ** 2
        results.append((n, s))
        n += 1
    return n-2, results


# 累加和不超过 1000 的最大项数
max_n, results = find_max_n(1000)

# 打印结果
print("n\ts")
for n, s in results:
    print(f"{n}\t{s}")

print(f"累计和不超过 1000 的最大项是 n={max_n}。")

(2)运行结果截图

  • 6
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

曦樂~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值