ตัวอย่างแชทบอทคำนวณ BMR และ BMI

สูตรคำนวณแคลอรี่ที่ใช้ในแต่ละวันของ Mifflin-St Jeor equation คือ

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

เริ่มจากคำถามแรกคือถามเพศก่อน โดยแสดงทางเลือก Male สำหรับเพศชาย Female สำหรับเพศหญิง ส่วนอื่นๆ ให้ทวนคำตอบแล้วกลับไปถามใหม่อีกรอบ
กำหนดให้ตัวแปร W เริ่มต้นมีค่าเป็น 10
กำหนดให้ตัวแปร H เริ่มต้นมีค่าเป็น 6.25
กำหนดให้ตัวแปร Y เริ่มต้นมีค่าเป็น 5
และกำหนดให้ตัวแปร P เริ่มต้นมีค่าเป็น 0
ถ้าผู้ใช้เลือก Male ให้เก็บค่า male ลงตัวแปร sex
ถ้าผู้ใช้เลือก Female ให้เก็บค่า female ลงตัวแปร sex
เข้าสู่คำถามถัดไปคือถามน้ำหนัก ซึ่งจะไม่มีทางเลือกให้เลือกนอกจากให้ผู้ใช้พิมพ์เอง โดยทำการส่งค่า Parameter ## ที่ผู้ใช้กรอกสังเกตว่าจะมีแค่ทางเลือกเดียวคือ gte30 (Greather Than or Equals 30) และ lt200 (Lower Than 200) หรืออยู่ระหว่าง 30 และ 200 ที่จะปล่อยให้ผ่านไปสู่คำถามถัดไปได้ ทางเลือกอื่นๆ จะกลับไปยังคำถามเดินทั้งสิ้น
ถ้าผู้ใช้พิมพ์ตัวเลขที่อยู่ระหว่าง 30 และ 200 ให้เก็บค่าน้ำหนักลงตัวแปร weight

เข้าสู่คำถามถัดไปคือถามส่วนสูง จะยอมให้คำตอบที่อยู่ระหว่าง 100 ถึง 200 ผ่านไปยังคำถามถัดไปเท่านั้น
ถ้าผู้ใช้ตอบเป็นค่าที่อยู่ระหว่าง 100 ถึง 200 ให้เก็บค่าส่วนสูงลงตัวแปร height

เข้าสู่คำถามสุดท้ายคือถามอายุ ซึ่งจะยอมให้ค่าที่อยู่ระหว่าง 10 ถึง 120 ผ่านไปได้
หากค่าที่ผู้ใช้กรอกอยู่ระหว่าง 10 ถึง 120 ให้ทำการเก็บค่าอายุลงตัวแปร age
เข้าสู่การสรุปเพื่อทำการคำนวณค่า BMR
นำ W ตั้งต้นไปคูณด้วย weight แล้วเก็บค่าลง W
นำ H ตั้งต้นนำไปคูณด้วย height แล้วเก็บค่าลง H
นำ Y ตั้งต้นไปคูณด้วย age แล้วเก็บค่าลง Y
นำ height ไปหาร 100 แล้วเก็บค่าลง height เพื่อแปลงหน่วยเป็นเมตร

เอาค่า W บวกลงตัวแปรผลลัพท์ P
เอาค่า H บวกลงตัวแปรผลลัพท์ P
เอาค่า Y บวกลงตัวแปรผลลัพท์ P
เอาค่า height ที่แปลงเป็นเมตรแล้วคูณด้วยตัวมันเองหรือยกกำลังสอง
เข้าสู่เงื่อนไขในการตรวจสอบว่าเป็นเพศอะไรโดยการส่ง Parameter #sex
ถ้าเป็นชายให้เพิ่มค่า P ไป 5
ถ้าเป็นหญิงให้ลดค่า P ไป 161


ทำการแสดงค่า P หรือปริมาณแคลอรี่ต่อวันที่ควรบริโภคออกมา 
ทำการคำนวณดัชนีมวลกาย หรือ BMI ออกมาจากสูตร BMI = weight/(m*m) โดยการนำค่าจากตัวแปร height ที่แปลงเป็นเมตรและยกกำลังสองแล้วไปหารออกจาก weight แล้วส่งไปเข้าเงื่อนไขเพื่อแสดงลักษณะทางกายภาพออกมานั่นเอง

ทดสอบการใช้งานได้ ที่นี่ ครับ หรือ แชทบอท line id:@463gknwg





ความคิดเห็น