Python编写计算并计算国内BMI,输出身体的健康状况分类的程序 输入一个5位数n,不用eval,直接对字符串进行处理,判断第1个和和第5个字符是是不是相等,再判断第2个和第4个是不是相等,如果都相等,则输出是回文,否则输出不是回文
时间: 2023-05-11 07:02:40 浏览: 113
对于第一个问题,以下是Python编写计算并计算国内BMI,输出身体的健康状况分类的程序:
```python
height = float(input("请输入身高(单位:米):"))
weight = float(input("请输入体重(单位:千克):"))
bmi = weight / (height ** 2)
print("您的BMI指数为:{:.2f}".format(bmi))
if bmi < 18.5:
print("您的体重过轻")
elif bmi < 24:
print("您的体重正常")
elif bmi < 28:
print("您的体重过重")
elif bmi < 30:
print("您的体重属于轻度肥胖")
elif bmi < 35:
print("您的体重属于中度肥胖")
else:
print("您的体重属于重度肥胖")
```
对于第二个问题,以下是判断一个5位数n的第1个和第5个字符是否相等,第2个和第4个字符是否相等的程序:
```python
n = input("请输入一个5位数:")
if n[0] == n[4] and n[1] == n[3]:
print("是回文")
else:
print("不是回文")
```
希望这些代码能够帮到您!
相关问题
Python编写计算并计算国内BMI,输出身体的健康状况分类的程序提示输入一个5位数n,不用eval,直接对字符串进行处理,判断第1个和和第5个字符是是不是相等,再判断第2个和第4个是不是相等,如果都相等,则输出是回文,否则输出不是回文
以下是Python编写计算并计算国内BMI,输出身体的健康状况分类的程序:
```python
height = float(input("请输入您的身高(米):"))
weight = float(input("请输入您的体重(千克):"))
bmi = weight / (height ** 2)
print("您的BMI指数为:{:.2f}".format(bmi))
if bmi < 18.5:
print("您的体重过轻")
elif bmi < 24:
print("您的体重正常")
elif bmi < 28:
print("您的体重过重")
elif bmi < 30:
print("您已经肥胖")
else:
print("您已经严重肥胖")
```
以下是判断回文的程序:
```python
n = input("请输入一个5位数:")
if n[0] == n[4] and n[1] == n[3]:
print("是回文")
else:
print("不是回文")
```
至于"lua closure factory 完整代码"和"中文加密"的问题,我可以回答。但是请注意,这些问题并不是编程类问题的典型,因此请不要认为这是我角色扮演的一部分。
python输入一个表达式字符串计算结果不使用eval
可以使用栈来实现表达式的计算,具体步骤如下:
1. 定义一个栈,用来存储数字和运算符。
2. 遍历表达式字符串,如果遇到数字,就将其压入栈中;如果遇到运算符,就将栈顶的两个数字弹出,进行运算,并将结果压入栈中。
3. 最后栈中只剩下一个数字,就是表达式的计算结果。
下面是一个示例代码:
```python
def calculate(expression):
stack = []
i =
while i < len(expression):
if expression[i].isdigit():
j = i
while j < len(expression) and expression[j].isdigit():
j += 1
num = int(expression[i:j])
stack.append(num)
i = j
elif expression[i] in "+-*/":
op = expression[i]
if len(stack) < 2:
raise ValueError("Invalid expression")
b = stack.pop()
a = stack.pop()
if op == "+":
result = a + b
elif op == "-":
result = a - b
elif op == "*":
result = a * b
elif op == "/":
result = a / b
stack.append(result)
i += 1
else:
raise ValueError("Invalid expression")
if len(stack) != 1:
raise ValueError("Invalid expression")
return stack[]
```
这个函数接受一个表达式字符串作为参数,返回计算结果。如果表达式不合法,会抛出 ValueError 异常。