Chiều cao và cân nặng của trăn

Trong hướng dẫn ngắn này, chúng ta sẽ tạo một máy tính BMI bằng Python. Nó sẽ lấy chiều cao và cân nặng của một người và tính chỉ số BMI của họ

BMI là viết tắt của Chỉ số khối cơ thể. Nó là thước đo độ béo của cơ thể.

Chỉ số BMI được sử dụng để xác định tình trạng cơ thể và sức khỏe của một người. Một loạt các giá trị BMI được liên kết với các tình trạng sức khỏe khác nhau

Phạm vi BMITrạng tháiDưới 18. 5Thiếu cân18. 5 - 25Bình thường25 - 30Thừa cânTừ 30 trở lênBéo phì

Chỉ số khối cơ thể được tính bằng cách lấy cân nặng tính bằng kilôgam chia cho bình phương chiều cao tính bằng mét. tôi. e cân nặng / [chiều cao * chiều cao] .

    Mục lục

  1. Tạo Máy tính BMI bằng Python
  2. Tìm lỗi trong Máy tính BMI
  3. Mã hoàn chỉnh cho máy tính BMI Python

Tạo Máy tính BMI bằng Python

Chúng tôi sẽ tạo máy tính BMI này từng bước. Đầu tiên, chúng tôi sẽ tiếp tục với một cách tiếp cận đơn giản và sau đó chúng tôi sẽ xem xét các lỗi có thể phát sinh trong mã và sau đó sửa đổi mã để sửa lỗi

Mỗi bước sẽ có một tiêu đề để hiểu rõ hơn về mã

I. Tạo một tệp cho máy tính BMI

Sử dụng trình chỉnh sửa mã yêu thích của bạn để tạo tệp có tên máy tính bmi. p . Chúng tôi sẽ sử dụng tệp này để viết mã cho công cụ tính BMI.

II. Lấy thông tin đầu vào từ người dùng

Đầu tiên, chúng ta sẽ lấy chiều cao và cân nặng đầu vào từ người dùng. Chúng ta sẽ sử dụng hàm input[] để lấy đầu vào từ người dùng và lưu trữ vào một biến.

Hàm Python đầu vào lấy một chuỗi làm đối số. Chuỗi là những gì người dùng sẽ thấy khi họ nhập đầu vào. Chuỗi có thể là bất cứ thứ gì như Nhập chiều cao của bạn theo mét hoặc Nhập cân nặng của bạn theo kilôgam.

Hàm đầu vào sẽ trả về đầu vào là một chuỗi. Vì vậy, chúng tôi sẽ chuyển đổi chuỗi thành số thực hoặc số nguyên bằng cách sử dụng float[] hoặc int[] function.

# take input from user
height = float[input["Enter your height in centimeters: "]]
weight = float[input["Enter your weight in kilograms: "]]

III. Tính chỉ số BMI

Bây giờ chúng ta sẽ tính chỉ số BMI. Sử dụng công thức cân nặng / [chiều cao * chiều cao] .

Đảm bảo đơn vị chiều cao là m và đơn vị trọng lượng là . .

Chiều cao của chúng tôi tính bằng centimet nên trước tiên, hãy chia nó cho 100 để có chiều cao tính bằng mét

Bây giờ hãy tính chỉ số BMI bằng cách sử dụng công thức và lưu trữ nó trong một biến có tên là bmi .

# convert height to meters
height = height / 100

# calculate BMI
bmi = weight / [height * height]

IV. Hiển thị chỉ số BMI và trạng thái của người dùng

Xem bảng trên để biết giá trị BMI liên quan đến trạng thái gì. Bây giờ chúng tôi sẽ hiển thị chỉ số BMI và trạng thái cho người dùng

Chúng ta sẽ sử dụng câu lệnh if để kiểm tra giá trị BMI. Nếu giá trị BMI nhỏ hơn 18. 5 thì chúng tôi sẽ hiển thị trạng thái là Thiếu cân . Và sẽ làm như vậy cho mọi điều kiện khác bằng cách sử dụng câu lệnh elif .

# print bmi and category
if bmi < 18.5:
    print[f"Your BMI is {bmi:.2f} and you are underweight."]
elif bmi < 25:
    print[f"Your BMI is {bmi:.2f} and you are normal."]
elif bmi < 30:
    print[f"Your BMI is {bmi:.2f} and you are overweight."]
else:
    print[f"Your BMI is {bmi:.2f} and you are obese."]

Như vậy là chúng ta đã tạo xong công cụ tính chỉ số BMI bằng Python. Bây giờ chúng ta sẽ xem xét các lỗi có thể phát sinh trong mã và sửa nó

Tìm lỗi trong Máy tính BMI

Công cụ tính chỉ số BMI ở trên được tạo ra với cách tiếp cận rất đơn giản mà không cần nghĩ đến các tình huống mà nó có thể thất bại trong

I. Sửa đầu vào sai

Vấn đề đầu tiên có thể phát sinh khi người dùng nhập bất kỳ chuỗi ngẫu nhiên nào thay vì một số. Ví dụ: nếu người dùng nhập "xin chào" thay vì "5. 5" thì chương trình sẽ không thể chuyển chuỗi thành float và sẽ báo lỗi.

Máy tính BMI đầu vào sai

Để giải quyết vấn đề này, chúng ta sẽ sử dụng thửngoại trừ statements and convert the string to float within the try block. If the string is not a number, then the ngoại trừ sẽ được thực thi và chương trình sẽ báo lỗi.

# take input from user
height = input["Enter your height in centimeters: "]
weight = input["Enter your weight in kilograms: "]

# convert input from string to float
try:
    height = float[height]
    weight = float[weight]
except ValueError:
    print["Invalid input. Please input numbers.\n"]
    exit[]

II. Sửa đầu vào âm hoặc bằng 0

Bây giờ chúng tôi chắc chắn rằng đầu vào sẽ luôn là một số. Vấn đề thứ hai có thể phát sinh khi người dùng nhập số âm hoặc Số không

Chúng tôi biết cả chiều cao và cân nặng đều không thể âm hoặc bằng không. Vì vậy, chúng tôi sẽ kiểm tra xem chiều cao hoặc cân nặng là âm hay bằng không. Nếu đúng thì ta sẽ hiện thông báo lỗi và thoát khỏi chương trình

# check if height and weight are positive
if height 

Chủ Đề