Kalkulator Zona Denyut Jantung
Hitung 5 zona denyut jantung latihan Anda berdasarkan usia dan detak jantung istirahat.
Kalkulator Zona Detak Jantung mengidentifikasi lima zona detak jantung latihan Anda berdasarkan usia dan opsional detak jantung istirahat Anda yang diukur. Latihan di zona detak jantung tertentu memungkinkan Anda menargetkan adaptasi fisiologis yang berbeda.
Masukkan usia Anda dan alat memperkirakan Detak Jantung Maksimum (DJM) Anda menggunakan rumus paling umum: 220 dikurangi usia. Jika Anda mengetahui DJM aktual dari tes kebugaran, masukkan untuk zona yang lebih akurat.
Untuk menggunakan zona detak jantung secara efektif, kenakan monitor detak jantung selama latihan dan usahakan untuk tetap berada dalam zona target selama durasi upaya yang direncanakan. Sebagian besar atlet rekreasional mendapat manfaat dari menghabiskan sebagian besar waktu latihan (sekitar 80%) di Zona 1-2.
Pertanyaan yang Sering Diajukan
Implementasi Kode
def calculate_hr_zones(age: int, resting_hr: int = 60, method: str = "fox") -> dict:
"""
Calculate heart rate training zones.
method: 'fox' (220 - age), 'tanaka' (208 - 0.7 * age), 'karvonen' (uses resting HR)
"""
if method == "tanaka":
max_hr = 208 - 0.7 * age
else:
max_hr = 220 - age
if method == "karvonen":
hrr = max_hr - resting_hr # Heart Rate Reserve
zones = {
"Zone 1 (Recovery)": (resting_hr + 0.50 * hrr, resting_hr + 0.60 * hrr),
"Zone 2 (Aerobic)": (resting_hr + 0.60 * hrr, resting_hr + 0.70 * hrr),
"Zone 3 (Tempo)": (resting_hr + 0.70 * hrr, resting_hr + 0.80 * hrr),
"Zone 4 (Threshold)": (resting_hr + 0.80 * hrr, resting_hr + 0.90 * hrr),
"Zone 5 (Max)": (resting_hr + 0.90 * hrr, max_hr),
}
else:
zones = {
"Zone 1 (Recovery)": (0.50 * max_hr, 0.60 * max_hr),
"Zone 2 (Aerobic)": (0.60 * max_hr, 0.70 * max_hr),
"Zone 3 (Tempo)": (0.70 * max_hr, 0.80 * max_hr),
"Zone 4 (Threshold)": (0.80 * max_hr, 0.90 * max_hr),
"Zone 5 (Max)": (0.90 * max_hr, max_hr),
}
print(f"Age: {age}, Max HR: {max_hr:.0f} bpm, Method: {method}")
for name, (lo, hi) in zones.items():
print(f" {name}: {lo:.0f} - {hi:.0f} bpm")
return zones
calculate_hr_zones(age=30, resting_hr=65, method="karvonen")Comments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.