def calculate_bmi(weight, height): height_m = height / 100 return weight / (height_m ** 2) def bmi_category(bmi): if bmi < 18.5: return "Underweight" elif bmi < 25: return "Normal Weight" elif bmi < 30: return "Overweight" else: return "Obese" def build_prompt(name, age, gender, height, weight, goal, fitness_level, equipment): bmi = calculate_bmi(weight, height) bmi_status = bmi_category(bmi) equipment_list = ", ".join(equipment) if equipment else "No Equipment" prompt = f""" You are a certified professional fitness trainer. Create a structured 5-day personalized workout plan. User Profile: Name: {name} Age: {age} Gender: {gender} Height: {height} cm Weight: {weight} kg BMI: {bmi:.2f} ({bmi_status}) Goal: {goal} Fitness Level: {fitness_level} Available Equipment: {equipment_list} Instructions: 1. Divide the workout from Day 1 to Day 5 2. Include exercise names 3. Include sets and reps 4. Include rest time 5. Keep the plan beginner friendly if needed """ return prompt, bmi, bmi_status