請輸入年齡後按下「計算」。輸入安靜心跳率,就會用能反映個人體能差異的 Karvonen 公式計算(沒有輸入時,以最大心跳率的簡單比例計算)。如果有運動心肺功能測試等實測的最大心跳率,可以代替年齡直接使用。
這個頁面可以做什麼
- 只要輸入年齡,馬上就能知道運動時作為參考的目標心跳率區間(最大心跳率的 50~85%)
- 把運動強度 50~100% 分成 5 個區間,顯示各區間目標心跳率的表格和圖表,可作為暖身、燃脂、提升耐力等依目的選擇強度的參考
- 輸入安靜心跳率,就會用能反映個人體能差異的 Karvonen 公式計算(沒有輸入時,以最大心跳率的簡單比例計算)
- 最大心跳率的推估公式除了「220 − 年齡」(標準)之外,也能選 Tanaka 公式、Nes 公式;有實測值的話也可以直接使用
- 公式的淺顯解說,以及可直接複製到 Excel、Google 試算表、Python 的公式,也都整理在這個頁面
這個計算有什麼用?
要只靠感覺維持「不會太喘、但又有運動到」的配速,其實意外地困難。有了目標心跳率,邊跑邊看心跳率,就能客觀地調整配速。
例如 30 歲、安靜心跳率 70 bpm 的人,想以打好耐力基礎的強度 60~70% 運動,用 Karvonen 公式算出的參考值是 142~154 bpm。用法就是調快或調慢速度,讓心跳率保持在這個範圍內。
一般認為,脂肪最容易被當作能量使用的,是「可以輕鬆交談」程度的中等強度(最大心跳率的 60~70% 左右)。太拚命、強度太高反而無法持久,總消耗量有時反而增加不了。
例如 50 歲(最大心跳率參考值 170 bpm)的人,用最大心跳率法算出這個區間約是 102~119 bpm。能用數字確認「不吃力卻有效」的強度,正是這個計算派上用場的地方。
許多跑錶和智慧手錶,會把心跳率用「區間 1~5」這樣以不同顏色分段顯示。這些分界的真面目,正是本頁「最大心跳率的百分之幾」的概念。
了解原理之後,就能有根據地使用手錶的顯示,例如「今天在區間 2 慢慢跑久一點」「間歇跑要拉到區間 4」。在設定畫面把最大心跳率和安靜心跳率改成自己的值,區間也會更準確。
很久沒運動的人一下子就用高強度拚命,不但難以持續,對身體的負擔也很大。剛開始運動的時期,一般建議先從暖身、維持體能區間(最大心跳率的 50~60%)這種輕鬆的強度慢慢適應。
例如 40 歲的人,最大心跳率參考值是 180 bpm,這個區間約是 90~108 bpm。能用數字掌握「不要超過這裡」的上限,對容易逞強的重新開始時期來說,就是一個安全裝置。另外,有慢性病或對健康有疑慮的人,開始運動前請先諮詢醫師。
耐力運動一般會用心跳率區間,把「慢慢跑久一點的日子」和「提高強度的日子」分開管理。不靠感覺判斷強度,就能針對想鍛鍊的能力,有目標地累積訓練。
例如 25 歲、安靜心跳率 60 bpm 的選手,用 Karvonen 公式算出提升無氧能力的區間(80~90%)是 168~182 bpm。間歇跑時拉到這個範圍,恢復跑則壓在低區間,就是常見的安排方式。
公式與圖表
符號與用語解說
符號
| \(T\) | 要求的目標心跳率(bpm),取自英文 Target(目標)的第一個字母。 |
| \(M\) | 最大心跳率(bpm),也就是全力運動時能達到的心跳率上限,取自英文 Maximum 的第一個字母。 |
| \(A\) | 年齡(歲),取自英文 Age 的第一個字母。 |
| \(R\) | 安靜心跳率(bpm),取自英文 Rest(安靜)的第一個字母。 |
| \(p\) | 運動強度,把以最大的百分之幾的強度運動用小數表示的值(50% 就是 0.50)。 |
| \(M - R\) | 儲備心跳率(最大心跳率 − 安靜心跳率),表示運動時心跳率還能往上提高的「餘裕幅度」,是 Karvonen 公式的基礎。 |
用語
| 心跳率 | 心臟 1 分鐘跳動的次數,也叫心率,單位是 bpm(beats per minute)。數手腕脈搏 15 秒再乘以 4 也能量出來。 |
| 最大心跳率 | 全力運動時能達到的心跳率上限。有隨年齡下降的傾向,用「220 − 年齡」等公式推估(即使年齡相同,也有約 ±10 bpm 的個人差異)。 |
| 安靜心跳率 | 平靜休息時的心跳率。成人約在 50~90 bpm,持續做耐力運動會有下降的傾向。基本上在早上剛睡醒時測量。 |
| 儲備心跳率 | 最大心跳率減去安靜心跳率的值(HRR:Heart Rate Reserve)。表示運動時心跳率還能往上提高的「餘裕幅度」,是 Karvonen 公式的基礎。 |
| Karvonen 公式 | 把儲備心跳率乘以運動強度,再加回安靜心跳率的目標心跳率代表性計算方法,也叫儲備心跳率法。由芬蘭生理學家 Karvonen 提出,廣泛用於健康體能指導的現場。 |
| 目標心跳率 | 為了維持符合運動目的的強度,在運動中作為參考的心跳率(THR:Target Heart Rate),也就是本頁要求的值。 |
| 運動強度 | 運動的吃力程度。本頁用「最大心跳率(或儲備心跳率)的百分之幾」表示。 |
| bpm | beats per minute(每分鐘的跳動次數)的縮寫,是心跳率的單位,中文也寫成「次/分」。 |
| 乙型阻斷劑 | 有抑制心跳率作用的藥物(β 阻斷劑),用於治療高血壓和心臟病。服用期間即使運動,心跳率也不容易上升,所以本頁的計算無法作為參考。運動強度請和醫師討論後決定。 |
建議先了解的基礎知識
為了能「真正理解意義」地使用這個頁面的計算,這裡整理了建議事先了解的基礎知識。
| 比率與百分率(國小五年級,10~11 歲) |
|
| 四則運算的順序(國小四年級,9~10 歲) |
|
| 四捨五入(國小四~五年級,9~11 歲) |
|
| 代數式的代入求值(國中一年級,12~13 歲) |
|
用 Excel 計算的方法
| 年齡 A(歲) | 30 |
| 最大心跳率 M(bpm) | =220-B1 |
| 年齡 A(歲) | 40 |
| Tanaka 公式的最大心跳率(bpm) | =ROUND(208-0.7*B1,0) |
| Nes 公式的最大心跳率(bpm) | =ROUND(211-0.64*B1,0) |
| 最大心跳率 M(bpm) | 195 |
| 運動強度 p(60% 就填 0.6) | 0.6 |
| 目標心跳率 T(bpm) | =ROUND(B1*B2,0) |
| 最大心跳率 M(bpm) | 190 |
| 安靜心跳率 R(bpm) | 70 |
| 運動強度 p(50% 就填 0.5) | 0.5 |
| 目標心跳率 T(bpm) | =ROUND(B2+B3*(B1-B2),0) |
「ROUND(值,0)」是四捨五入到整數。例如第 1 個表格會顯示 190,第 2 個表格是 180 和 185,第 3 個表格是 117,第 4 個表格是 130。只要把年齡和心跳率改成您自己的數值就能使用。
用 Google 試算表計算的方法
| 年齡 A(歲) | 30 |
| 最大心跳率 M(bpm) | =220-B1 |
| 年齡 A(歲) | 40 |
| Tanaka 公式的最大心跳率(bpm) | =ROUND(208-0.7*B1,0) |
| Nes 公式的最大心跳率(bpm) | =ROUND(211-0.64*B1,0) |
| 最大心跳率 M(bpm) | 195 |
| 運動強度 p(60% 就填 0.6) | 0.6 |
| 目標心跳率 T(bpm) | =ROUND(B1*B2,0) |
| 最大心跳率 M(bpm) | 190 |
| 安靜心跳率 R(bpm) | 70 |
| 運動強度 p(50% 就填 0.5) | 0.5 |
| 目標心跳率 T(bpm) | =ROUND(B2+B3*(B1-B2),0) |
用 Python 計算的方法
age = 30 # 年齡(歲)
resting_hr = 70 # 安靜心跳率(bpm)。不知道的話設為 None
measured_max_hr = None # 實測的最大心跳率(bpm)。有的話填入數值
# 最大心跳率(有實測值就優先使用;沒有就用 220 − 年齡推估)
if measured_max_hr is not None:
max_hr = measured_max_hr
else:
max_hr = 220 - age
def round_half_up(x):
# 加 0.5 後捨去的四捨五入(Python 的 round() 會把 0.5 捨入到偶數,所以不使用)
return int(x + 0.5)
def target_hr(intensity_percent):
# 有安靜心跳率就用 Karvonen 公式,沒有就用最大心跳率法
if resting_hr is not None:
return round_half_up(resting_hr + intensity_percent / 100 * (max_hr - resting_hr))
return round_half_up(max_hr * intensity_percent / 100)
print(f"最大心跳率:{round_half_up(max_hr)} bpm")
print(f"目標心跳率參考範圍(強度 50~85%):{target_hr(50)}~{target_hr(85)} bpm")
for lower, upper in [(50, 60), (60, 70), (70, 80), (80, 90), (90, 100)]:
print(f"強度 {lower}~{upper}%:{target_hr(lower)}~{target_hr(upper)} bpm")
用 LaTeX 等數學式語言的寫法(可直接複製)
M = 220 − A
M = 220 - A
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>M</mi>
<mo>=</mo>
<mn>220</mn>
<mo>−</mo>
<mi>A</mi>
</mrow>
</math>
M = 220 - A
220 - A
M := 220 - A;
M = 220 - A;
M = 220 - A
M = 208 − 0.7 × A, M = 211 − 0.64 × A
M = 208 - 0.7A, \quad M = 211 - 0.64A
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>M</mi>
<mo>=</mo>
<mn>208</mn>
<mo>−</mo>
<mn>0.7</mn>
<mi>A</mi>
<mo>,</mo>
<mi>M</mi>
<mo>=</mo>
<mn>211</mn>
<mo>−</mo>
<mn>0.64</mn>
<mi>A</mi>
</mrow>
</math>
M = 208 - 0.7A, M = 211 - 0.64A
{208 - 0.7*A, 211 - 0.64*A}
M1 := 208 - 0.7*A; M2 := 211 - 0.64*A;
M1 = 208 - 0.7*A; M2 = 211 - 0.64*A;
M = 208 - 0.7A, M = 211 - 0.64A
T = M × p
T = M \times p
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>T</mi>
<mo>=</mo>
<mi>M</mi>
<mo>×</mo>
<mi>p</mi>
</mrow>
</math>
T = M p
M*p
T := M*p;
T = M*p;
T = M p
T = R + p × (M − R)
T = R + p \times (M - R)
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>T</mi>
<mo>=</mo>
<mi>R</mi>
<mo>+</mo>
<mi>p</mi>
<mo>×</mo>
<mrow>
<mo>(</mo>
<mi>M</mi>
<mo>−</mo>
<mi>R</mi>
<mo>)</mo>
</mrow>
</mrow>
</math>
T = R + p xx (M - R)
R + p*(M - R)
T := R + p*(M - R);
T = R + p*(M - R);
T = R + p(M - R)
請 ChatGPT 幫忙計算的方法
你是運動生理學的計算助理。請務必實際執行 Python 程式碼來進行下面的計算,並只以執行結果的數值作為回答的依據(不要用心算或推測回答)。 要求 30 歲、安靜心跳率 70 bpm 的人的目標心跳率。 1. 請用「220 − 年齡」推估最大心跳率。 2. 請用 Karvonen 公式 T = 安靜心跳率 + 強度 × (最大心跳率 − 安靜心跳率),列出運動強度 50%、60%、70%、80%、90%、100% 的目標心跳率。 3. 心跳率請四捨五入到整數 bpm(0.5 以上進位)。 請列出計算所用的公式,以及執行結果的數值。另外,請一併說明這是針對健康成人的一般參考值,有心臟疾病或正在服用會影響心跳率藥物的人,應該諮詢醫師。
使用方法
-
1輸入數值在輸入欄中輸入要計算的數值
-
2計算按下「計算」按鈕
-
3查看結果計算結果會立即顯示。計算的思路和公式的解說,也都能在同一個頁面查看
DataChef 的特色
不需專業知識,操作直覺又簡單
無須登錄任何個人資料
按下「下載」後自動刪除檔案
無須標註來源出處
亦無須事先取得商用授權