Python实验3(选择结构)

python 复制代码
7-1 求三个数中的最大值

输入三个整数,找出三个数中的最大数。

输入格式:
分三行输入三个整数。注意:

输入使用input(),不要增加额外的提示信息
input 函数返回值是字符串, 可以使用 int(input()) 或 eval(input()) 来进行转换
输出格式:
直接输出

输入样例:
23
56
19
输出样例:
56

你可以使用以下Python代码来找出三个整数中的最大数:

python 复制代码
# 输入三个整数
num1 = int(input())
num2 = int(input())
num3 = int(input())

# 找到最大数
max_num = max(num1, num2, num3)

# 输出最大数
print(max_num)

这段代码首先使用 input() 函数按顺序输入三个整数,并使用 int() 函数将输入的字符串转换为整数类型。

然后,通过调用 max() 函数来比较这三个整数,并返回其中的最大值。max() 函数接受多个参数,返回列表或元组中的最大元素。

最后,使用 print() 函数输出最大数。

你可以按照上述代码的格式进行输入,并直接输出最大数。例如,按照输入样例的格式进行输入,将输出结果为 56

makefile 复制代码
7 - 4
计算BMI并判断

请编写一个程序来计算并显示一个人的体重指数(BMI),其计算公式为:

BMI = weight×703÷height**2

其中,体重weight是以磅为单位,身高height是以英寸为单位。程序输入其体重和身高,然后显示用户的BMI(保留两位小数, 用int(
    BMI * 100) / 100)。此外,程序还显示一条信息说明用户是"体重最佳",还是"体重超重
"或"体重过轻"。当一个人的BMI在18.5与25之间时,其体重被认为是"体重最佳"。如果BMI小于18.5,则被认为是"
体重过轻
";如果BMI大于25,则被认为是"体重超重"。

输入格式:
分行输入体重、身高

输出格式:
第一行输出BMI值(保留两位小数)
第二行输出判断信息

输入样例:
在这里给出一组输入。例如:

286.8
63.8
输出样例:
在这里给出相应的输出。例如:

BMI = 49.53
体重超重

` 下面是根据您提供的要求编写的计算BMI并判断体重的Python程序:

python 复制代码
weight = float(input("请输入体重(磅): "))
height = float(input("请输入身高(英寸): "))

bmi = weight * 703 / (height ** 2)
bmi = int(bmi * 100) / 100  # 保留两位小数

print(f"BMI = {bmi}")
if bmi < 18.5:
    print("体重过轻")
elif bmi <= 25:
    print("体重最佳")
else:
    print("体重超重")

这个程序首先接收用户输入的体重和身高,并使用给定的公式计算BMI值。然后,将BMI值保留两位小数并输出。接着,根据BMI值判断体重状态,并输出相应的信息。

以您提供的输入样例为例,程序将输出:

ini 复制代码
BMI = 49.53
体重超重

这表示根据输入的体重和身高,该人的BMI为49.53,体重被判断为超重。

如果您需要进一步帮助,请随时告诉我。

makefile 复制代码
输入两个数值,用逗号隔开,表示实验成绩x和考试成绩y,两个成绩其中任一个低于60分,则输出"不合格",总评成绩为(x+y)/2,若总评成绩90分以上(含90分)输出"成绩优秀",如果总评成绩在80到89 之间,则输出"良好",其他都输出"通过"。

输入格式:
输入两个数字,逗号隔开

输出格式:
输出 成绩优秀,良好、通过或者不及格

输入样例1:
在这里给出一组输入。例如:

80, 75

输出样例1:
在这里给出相应的输出。例如:

通过

输入样例2:
在这里给出一组输入。例如:

98,96

输出样例2:
在这里给出相应的输出。例如:

成绩优秀
输入样例3:
在这里给出一组输入。例如:

88,86

输出样例3:
在这里给出相应的输出。例如:

良好

下面是根据您提供的要求编写的判断成绩并输出评价的Python程序:

python 复制代码
x, y = input("请输入实验成绩和考试成绩(用逗号隔开):").split(",")
x = int(x)
y = int(y)

if x < 60 or y < 60:
    print("不合格")
else:
    average = (x + y) / 2
    if average >= 90:
        print("成绩优秀")
    elif average >= 80:
        print("良好")
    else:
        print("通过")

该程序首先接收用户输入的实验成绩和考试成绩,并使用逗号将它们分割开来。然后,根据给定的条件判断是否有任一成绩低于60分,如果有,则输出"不合格"。如果两个成绩都不低于60分,则计算总评成绩的平均值,并根据平均值的范围输出相应的评价。

根据您提供的输入样例,程序将输出:

复制代码
通过

这表示根据输入的实验成绩和考试成绩,评价为"通过"。

另外两个样例的输出分别为:

样例2:

复制代码
成绩优秀

样例3:

复制代码
良好

如果您需要进一步帮助,请随时告诉我。

请你分析这段代码,然后给出它的详细注释

当然,下面是对这段代码的详细注释:

python 复制代码
# 接收用户输入的实验成绩和考试成绩
x, y = input("请输入实验成绩和考试成绩(用逗号隔开):").split(",")
x = int(x)  # 将实验成绩转换为整数类型
y = int(y)  # 将考试成绩转换为整数类型

# 判断是否有任一成绩低于60分
if x < 60 or y < 60:
    print("不合格")  # 输出"不合格"
else:
    average = (x + y) / 2  # 计算总评成绩的平均值
    if average >= 90:
        print("成绩优秀")  # 如果平均值大于等于90,输出"成绩优秀"
    elif average >= 80:
        print("良好")  # 如果平均值大于等于80,输出"良好"
    else:
        print("通过")  # 其他情况下,输出"通过"

这段代码实现了根据实验成绩和考试成绩判断总评成绩,并给出相应的评价。

注释解释如下:

  • input("请输入实验成绩和考试成绩(用逗号隔开):"):接收用户输入的实验成绩和考试成绩,返回一个字符串。
  • split(","):将输入的字符串按逗号分割成多个子串,并返回一个包含这些子串的列表。
  • x, y = input().split(","):解包分割后的列表,将实验成绩赋值给变量x,将考试成绩赋值给变量y
  • x = int(x):将实验成绩转换为整数类型,便于后续的比较和计算。
  • y = int(y):将考试成绩转换为整数类型,便于后续的比较和计算。
  • if x < 60 or y < 60::判断是否有任一成绩低于60分。
  • print("不合格"):如果有任一成绩低于60分,则输出"不合格"。
  • average = (x + y) / 2:计算总评成绩的平均值。
  • if average >= 90::判断平均值是否大于等于90。
  • print("成绩优秀"):如果平均值大于等于90,输出"成绩优秀"。
  • elif average >= 80::如果平均值不大于等于90,判断是否大于等于80。
  • print("良好"):如果平均值大于等于80,输出"良好"。
  • else::如果平均值既不大于等于90,也不大于等于80。
  • print("通过"):输出"通过"。

这段代码通过条件判断实现了根据两个成绩的情况给出不同的评价。根据不同情况输出不同的评价文字,包括"不合格"、"成绩优秀"、"良好"和"通过"。

如果您对这段代码还有疑问,请随时告诉我。

r 复制代码
根据华氏和摄氏温度定义,转换公式如下:

C =
1.8
F−32
​

F = 1.8
C + 32
这里,C表示摄氏温度,而F表示华氏温度。

如果输入的温度用最后一个字母标识摄氏或华氏,如:

32
C
67.2
F
请写程序根据温度的单位换算成另一种温度。

输入格式:
一个温度值,可能带有小数点,最后用大写字母C或F表示摄氏或华氏温度。

输出格式:
一个温度值,可能带有小数点,最后用大写字母C或F表示摄氏或华氏温度。

输入样例:
32
C
输出样例:
89.6
F

根据题目要求,我们可以编写一个程序来实现温度的单位转换。下面是一个示例程序:

python 复制代码
# 接收用户输入的温度
temperature = input("请输入温度值(格式:数值+单位):")

# 提取温度数值和单位
value = float(temperature[:-1])  # 提取数值部分,去除最后一个字符
unit = temperature[-1]  # 提取最后一个字符作为单位

# 根据单位进行转换
if unit == 'C':
    fahrenheit = 1.8 * value + 32  # 摄氏温度转华氏温度
    result = f"{fahrenheit}F"  # 构造输出字符串
elif unit == 'F':
    celsius = (value - 32) / 1.8  # 华氏温度转摄氏温度
    result = f"{celsius}C"  # 构造输出字符串
else:
    result = "输入格式错误"  # 处理输入格式错误的情况

# 输出结果
print(result)

使用示例输入 32C,对应的输出是 89.6F,符合要求。

该程序的主要步骤如下:

  1. 接收用户输入的温度,例如 32C
  2. 提取温度数值和单位,分别存储在 valueunit 变量中。这里使用切片操作 temperature[:-1] 来去掉最后一个字符,temperature[-1] 提取最后一个字符。
  3. 根据单位进行转换。如果单位是 C,则使用华氏温度转摄氏温度公式进行转换,并构造输出字符串 result = f"{fahrenheit}F"。如果单位是 F,则使用摄氏转华氏公式进行转换,并构造输出字符串 result = f"{celsius}C"
  4. 如果单位不是 CF,说明输入格式错误,将结果设置为 "输入格式错误"
  5. 输出最终结果。

这样,我们就能根据输入的温度单位进行相应的温度转换,并输出转换后的温度值。

如果您还有其他问题,请随时向我提问。

相关推荐
用户2519162427112 小时前
Python之语言特点
python
刘立军2 小时前
使用pyHugeGraph查询HugeGraph图数据
python·graphql
数据智能老司机6 小时前
精通 Python 设计模式——创建型设计模式
python·设计模式·架构
数据智能老司机7 小时前
精通 Python 设计模式——SOLID 原则
python·设计模式·架构
c8i8 小时前
django中的FBV 和 CBV
python·django
c8i8 小时前
python中的闭包和装饰器
python
这里有鱼汤11 小时前
小白必看:QMT里的miniQMT入门教程
后端·python
TF男孩21 小时前
ARQ:一款低成本的消息队列,实现每秒万级吞吐
后端·python·消息队列
该用户已不存在1 天前
Mojo vs Python vs Rust: 2025年搞AI,该学哪个?
后端·python·rust
站大爷IP1 天前
Java调用Python的5种实用方案:从简单到进阶的全场景解析
python