Sprint Interval Calculator
Tabata, Sprint 8, 맞춤 프로토콜로 HIIT 스프린트 구간 운동을 계산합니다.
사전설정
이 도구 소개
고강도 인터벌 트레이닝(HIIT)은 최소한의 시간으로 심폐 체력을 향상시키고 칼로리를 소모하는 가장 효과적인 방법 중 하나입니다. 스프린트 인터벌 계산기는 Tabata, Sprint 8 등 인기 있는 프로토콜의 정확한 운동 및 휴식 간격을 계산하여 이러한 고강도 워크아웃을 구조화하는 데 도움을 줍니다. 운동 성능을 위한 훈련이든 전반적인 체력 향상이든, 각 세션의 이점을 최대화하려면 정확한 타이밍이 중요합니다.
이 계산기를 사용하려면 Tabata(20초 운동, 10초 휴식), Sprint 8 등 선호하는 HIIT 프로토콜을 선택하거나 자신의 운동 및 휴식 시간으로 맞춤형 인터벌을 만듭니다. 완료하려는 라운드 수 또는 총 운동 시간을 입력하면, 도구가 각 단계의 정확한 타이밍을 즉시 표시합니다. 그 후 워크아웃 중 생성된 일정에 따라 스프린트와 회복 시간의 속도를 조절할 수 있습니다.
이 도구는 러너, 사이클리스트, 크로스핏 운동선수 및 외부 앱이나 타이머에 의존하지 않고 정확한 워크아웃 구조를 원하는 피트니스 애호가에게 이상적입니다. 계산기는 브라우저에서 완전히 작동하므로 워크아웃 전에 빠르게 접근할 수 있습니다. HIIT는 신체에 상당한 부하를 주므로 세션 간에 충분한 회복을 허용하고 고강도 운동이 처음이라면 피트니스 전문가와 상담하시기 바랍니다.
자주 묻는 질문
코드 구현
import math
def calculate_hiit_session(protocol: str, body_weight_kg: float) -> dict:
"""Calculate HIIT sprint interval session details."""
protocols = {
"tabata": {"sprint": 20, "rest": 10, "sets": 8, "rounds": 1, "rest_between": 60},
"30-60": {"sprint": 30, "rest": 60, "sets": 8, "rounds": 1, "rest_between": 0},
"40-20": {"sprint": 40, "rest": 20, "sets": 8, "rounds": 1, "rest_between": 60},
"sprint8": {"sprint": 30, "rest": 90, "sets": 8, "rounds": 1, "rest_between": 0},
}
p = protocols.get(protocol, protocols["tabata"])
# MET-based calorie estimation
MET_SPRINT = 14.0 # sprint running
MET_WALK = 3.5 # recovery walking
sprint_time_min = (p["sprint"] * p["sets"]) / 60
rest_time_min = (p["rest"] * p["sets"] + p["rest_between"]) / 60
cal_sprint = MET_SPRINT * body_weight_kg * sprint_time_min / 60
cal_rest = MET_WALK * body_weight_kg * rest_time_min / 60
total_cal = cal_sprint + cal_rest
total_time = p["sprint"] * p["sets"] + p["rest"] * p["sets"] + p["rest_between"]
return {
"protocol": protocol,
"sets": p["sets"],
"sprint_sec": p["sprint"],
"rest_sec": p["rest"],
"total_time_sec": total_time,
"calories_burned": round(total_cal, 1),
}
result = calculate_hiit_session("tabata", 70)
print(f"Protocol: {result['protocol']}")
print(f"Sets: {result['sets']} x {result['sprint_sec']}s sprint / {result['rest_sec']}s rest")
print(f"Total time: {result['total_time_sec']}s ({result['total_time_sec']//60}min {result['total_time_sec']%60}s)")
print(f"Estimated calories: {result['calories_burned']} kcal")Comments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.