1from flask import Flask, request, render_template_string
2
3app = Flask(__name__)
4
5template = """
6<!DOCTYPE html>
7<html>
8<head><title>Protein RDA</title></head>
9<body>
10 <h2>Recommended Daily Protein Intake</h2>
11 <p>Gender: {{ gender }}</p>
12 <p>Weight: {{ weight_raw }}</p>
13 <p>Recommended Intake: <strong>{{ rda }} grams</strong></p>
14</body>
15</html>
16"""
17
18def parse_weight(weight_raw):
19 if weight_raw.endswith('kg'):
20 return float(weight_raw[:-2])
21 elif weight_raw.endswith('lb'):
22 return float(weight_raw[:-2]) * 0.453592
23 return float(weight_raw)
24
25def protein_rda(gender, weight_kg):
26 return weight_kg * (0.8 if gender.lower() == 'male' else 0.75)
27
28@app.route('/protein', methods=['GET'])
29def protein():
30 gender = request.args.get('gender', 'male')
31 weight_raw = request.args.get('weight', '60kg')
32
33 weight_kg = parse_weight(weight_raw)
34 rda = int(round(protein_rda(gender, weight_kg)))
35 return render_template_string(template, gender=gender, weight_raw=weight_raw, rda=rda)
36
37app.run(debug=True)