ดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งาน
 

     Body Mass Index (BMI) หรือ ค่าดัชนีมวลกาย คือค่าดัชนีที่ใช้ชี้วัดความสมดุลของน้ำหนักตัว (กิโลกรัม) และส่วนสูง (เซนติเมตร) ซึ่งสามารถระบุได้ว่า ตอนนี้รูปร่างของคนคนนั้นอยู่ในระดับใด ตั้งแต่อ้วนมากไปจนถึงผอมเกินไป ถ้าค่าดัชนีมวลกายอยู่ในระดับสูง เราก็จะรู้ได้เลยว่าร่างกายมีระดับไขมันในร่างกายสูง ซึ่งก็อาจจะทำให้เสี่ยงเป็นโรคอ้วน โรคเบาหวาน และโรคเรื้อรังอื่นๆ เช่น โรคหัวใจ โรคความดันโลหิตสูง และโรคเบาหวาน เป็นต้น ซึ่งเราก็สามารถออกกำลังกายเพื่อทำการเผาผลาญแคลอรี่ เพื่อช่วยในการลดค่าดัชนีมวลกายได้ แต่ก็ไม่ได้หมายความว่าค่าต่ำจะดี เพราะถ้าหากค่าดัชนีมวลกายอยู่ในระดับต่ำเกินไปอาจจะเสี่ยงเป็นโรคกระดูกพรุน ดังนั้นเราจึงควรตรวจสอบค่าดัชนีมวลกายของเราอยู่เสมอๆ ซึ่งการตรวจสอบที่ดีควรไปทำอย่างละเอียดที่โรงพยาบาล เพื่อที่คุณหมอจะได้ประเมิณสัดส่วนได้อย่างถูกต้อง แต่ปัจจุบันนี้ก็มีโปรแกรมคำนวณค่าดัชนีมวลกายคุณสามารถทำได้ง่ายๆ ด้วยตัวเอง ซึ่งในบทความนี้เราจะมาพูดถึงวิธีการคำนวณหาค่าดัชนีมวลกายด้วย Python กัน 

โดยจะใช้สูตรดังนี้

BMI = น้ำหนัก / ส่วนสูงยกกำลังสอง แล้วเทียบลักษณะรูปร่างดังนี้

BMI ลักษณะรูปร่าง
>=40 อ้วนขั้นสูงสุด
>=35 อ้วนขั้นที่ 2
>=28.5 อ้วนขั้นที่ 1
>=23.5 น้ำหนักเกิน
>=18.5 อยู่ในเกณฑ์ปกติ
<18.5 น้ำหนักต่ำกว่าเกณฑ์

เนื่องจากว่าในสูตรมีการใช้เลขยกกำลัง ดังนี้ให้จึงต้องทำการเรียกใช้โมดูล math โดยใช้

import math 

จากนั้นให้เราทำการกำหนดตัวแปร เพื่อใช้รับค่าน้ำหนักและส่วนสูงจากทางคีย์บอร์ด โดยในตัวอย่างนี้ต้องการรับค่าส่วนสูงเป็นเซนติเมตร

height = float(input('ส่วนสูง(เซนติเมตร) :'))
weight = float(input('น้ำหนัก(กิโลกรัม) :'))

และเนื่องจากว่าเราต้องการรับค่าส่วนสูงเป็นเซนติเมตร เราจึงต้องทำการเปลี่ยนเป็นเมตรเพื่อนำไปคำนวณ ด้วยการหารด้วย 100 จากนั้นก็สร้างตัวแปรเพื่อคำนวณหาค่า bmi

h = height / 100
bmi = (weight/(math.pow(h,2))) #ใช้ฟังก์ชัน math.pow มาช่วยในการยกกำลัง

จากนั้นก็จะเป็นการกำหนดเงื่อนไขต่างๆ โดยให้เรากำหนดตามตารางจากข้างต้น 

if bmi >= 40:              #หากว่าค่า bmi ที่คำนวณออกมามากกว่า 40 จะทำการแสดง 'อ้วนขั้นสูงสุด'
    shape = 'อ้วนขั้นสูงสุด'
elif bmi >= 35:
    shape = 'อ้วนขั้นที่ 2'
elif bmi >= 28.5:
    shape = 'อ้วนขั้นที่ 1'
elif bmi >= 23.5:
    shape = 'น้ำหนักเกิน'
elif bmi >= 18.5:
    shape = 'อยู่ในเกณฑ์ปกติ' 
else:                        #หากไม่ตรงเงื่อนไขจากข้างต้นเลย จะทำการแสดง 'น้ำหนักต่ำกว่าเกณฑ์'
    shape = 'น้ำหนักต่ำกว่าเกณฑ์'

และสุดท้ายจะเป็นการแสดงผล เมื่อเราทำการคำนวณเรียบร้อยแล้ว

print 'ค่า BMI คือ ' ,format(bmi , '.2f')  #ในส่วนนี้จะเป็นการแสดงผลแค่ทศนิยม 2 ตำแหน่ง
print 'ลักษณะรูปร่างคือ ',shape

ภาพรวมโค้ด

import math

height = float(input('ส่วนสูง(เซนติเมตร) :'))
weight = float(input('น้ำหนัก(กิโลกรัม) :'))
h = height / 100
bmi = (weight/(math.pow(h,2)))

if bmi >= 40:
    shape = 'อ้วนขั้นสูงสุด'
elif bmi >= 35:
    shape = 'อ้วนขั้นที่ 2'
elif bmi >= 28.5:
    shape = 'อ้วนขั้นที่ 1'
elif bmi >= 23.5:
    shape = 'น้ำหนักเกิน'
elif bmi >= 18.5:
    shape = 'อยู่ในเกณฑ์ปกติ'
else:
    shape = 'น้ำหนักต่ำกว่าเกณฑ์'

print 'ค่า BMI คือ ' ,format(bmi , '.2f')
print 'ลักษณะรูปร่างคือ ',shape

ตัวอย่างการใช้งาน

ผลลัพธ์จากการใช้งานโค้ดข้างต้น
ตัวอย่างผลลัพธ์

     ผลลัพธ์ที่ออกมาจากการทดลองใช้งาน เมื่อเรากำหนดส่วนสูงเท่ากับ 175 และน้ำหนักเท่ากับ 75 โปรแกรมก็จะทำการคำนวณ และนำไปเปรียบเทียบกับเงื่อนไขต่างๆที่เราได้ทำการกำหนดเอาไว้ จากนั้นก็จะแสดงผลออกมาเมื่อตรงกับเงื่อนไขเหล่านั้น

     เพียงเท่านี้เราก็สามารถสร้างโปรแกรมสำหรับคำนวณหาค่าดัชนีมวลกายได้แล้ว ซึ่งการหาค่า BMI ที่ดีควรไปทำอย่างละเอียดที่โรงพยาบาลเพราะจำมีประสิทธิภาพแล้วความแม่นยำที่มากกว่า ทั้งนี้การใช้โปรแกรมในการคำนวณเองอาจจะทำให้เราทราบถึงค่าไขมันในร่างกายได้ก็จริง แต่ก็ได้ในปริมาณคร่าวๆเท่านั้น แต่ก็เพียงพอต่อการประเมินสภาวะ ณ ปัจจุบันของตัวเราเองได้ ซึ่งค่า BMI นี้ไม่เพียงแต่จะเหมาะกับผู้ที่สนใจสุขภาพและชื่นชอบการออกกำลังกายเพียงเท่านั้น แต่ยังสามารถนำไปใช้ได้กับบุคคลทั่วๆไป รวมถึงผู้ที่ต้องการควบคุมน้ำหนักก็สามารถใช้ประโยชน์จากค่านี้ได้เช่นเดียวกัน

 

ใช้งาน โปรแกรมออนไลน์ BMI

ช่องทางการศึกษาเพิ่มเติมเกี่ยวกับ : Python 

การรับค่าจากแป้นพิมพ์ใน Python (ไพทอน)

ประวัติความเป็นมาของ ภาษา Python (ไพทอน)

การรับของข้อมูลจาก Keyboard ใน Python raw_input input

ตัวแปรที่ใช้ในฟังก์ชันการคำนวณตัวเลขเเละการแทนค่า ใน Pytho (ไพทอน)

ตัวดำเนินการ (Operator) สำหรับเปรียบเทียบความสัมพันธ์ใน Python (ไพทอน)

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
ภาษี หัก ณ ที่จ่าย บน ERP
โดย milk2533 ส 28 พ.ย. 2020 4:17 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
12
ส 28 พ.ย. 2020 4:17 pm โดย milk2533
ประโยชน์ของการใช้ปุ่ม Sendmail บน ERP
โดย milk2533 ส 28 พ.ย. 2020 1:40 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
8
ส 28 พ.ย. 2020 1:40 pm โดย milk2533
Contracts ในระบบ ERP คือ อะไร
โดย milk2533 ส 28 พ.ย. 2020 11:40 am บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
10
ส 28 พ.ย. 2020 11:40 am โดย milk2533
เขียน PHP กับ Array แบบนี้ ระวัง Error นะ
โดย mindphp ส 28 พ.ย. 2020 2:31 am บอร์ด Programming - PHP
0
20
ส 28 พ.ย. 2020 2:31 am โดย mindphp
โปรแกรม ERP แตกต่างจาก โปรแกรมบัญชีอย่างไร
โดย milk2533 ศ 27 พ.ย. 2020 3:05 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
23
ศ 27 พ.ย. 2020 3:05 pm โดย milk2533
ประโยชน์ ของ ERP
โดย milk2533 ศ 27 พ.ย. 2020 12:59 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
18
ศ 27 พ.ย. 2020 12:59 pm โดย milk2533
เรื่องของเคล็ดลับเก็บเงินหลักแสนสำหรับคนเรา สำคัญอย่างไร
โดย medalezga ศ 27 พ.ย. 2020 12:03 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
17
ศ 27 พ.ย. 2020 12:03 pm โดย medalezga
เครื่องตรวจนับสินค้า (EOB)
โดย milk2533 ศ 27 พ.ย. 2020 11:26 am บอร์ด IOT - Internet of things
0
26
ศ 27 พ.ย. 2020 11:26 am โดย milk2533