請輸入年齡、性別、身高、體重、活動量和目標,並選擇分配方案。每日目標熱量,以及蛋白質、脂肪、碳水化合物各自的公克數,會以圓餅圖和 4 種方案的比較表顯示。
這個頁面可以做什麼
- 只要輸入年齡、性別、身高、體重、活動量和目標(減重、維持、增重),馬上就能知道每日目標熱量,以及蛋白質、脂肪、碳水化合物每天各要吃多少公克
- 比例可從「均衡型、低脂型、低醣型、高蛋白型」4 種方案中選擇,並用表格同時比較 4 種方案的公克數。均衡型(P 15%、F 25%、C 60%)是落在國民健康署「每日飲食指南」建議範圍內的代表性比例
- 用圓餅圖顯示所選方案的三大營養素比例,3 種營養素的分配一目了然
- 同時算出飽和脂肪的上限(國人膳食營養素參考攝取量:少於總熱量的 10%)和添加糖(砂糖等)的上限(國民健康署:不超過總熱量的 10%)
- 這個頁面還整理了公式的淺顯解說,以及可直接複製到 Excel、Google 試算表、Python 使用的公式
這個計算有什麼用?
以健身雕塑體態為目標時,重要的不只是熱量,還有「這些熱量從哪裡來」。先決定蛋白質、脂肪、碳水化合物的公克數再安排三餐,是健身圈常說的「算 macro」的標準做法。例如目標熱量 2,000 kcal、選擇高蛋白型(蛋白質 35%)時,每日蛋白質目標就是 \(2000 \times 0.35 \div 4 = 175\) g。
健身教練的飲食指導,用的也是「熱量 → 比例 → 公克數」這個結構相同的計算。訓練目的改變時就重新選方案(比例),只要了解公式的原理,就能自然地調整。
少吃來減重時,如果連蛋白質也一起減少,一般認為肌肉也容易跟著脂肪一起流失。肌肉變少,基礎代謝率也會下降,可能變成不易瘦、容易復胖的體質。
只要知道「熱量可以減,但蛋白質的比例要保住(或改成高蛋白型)」這個分配的觀念,就能用數字避開只砍熱量的勉強節食。也可以用這個計算機確認,每週減 1 公斤這種大幅減重,會不會讓目標熱量低於基礎代謝率。
長時間的耐力運動,主要燃料是儲存在肌肉和肝臟的糖(肝醣)。所以在運動營養的領域,訓練量大的時期常會把碳水化合物的比例和公克數設計得多一些。
「由體重和訓練量估算熱量,再用比例換算成公克數」的計算流程,和本頁的結構相同。比賽等級的具體數值規劃是運動營養師等專業人員的工作,但先用數字掌握自己平常的分配,就是諮詢的好起點。
便利商店的便當和包裝食品上,都有「蛋白質 20.5 公克、脂肪 18.2 公克、碳水化合物 75.3 公克」這樣的營養標示,但不知道自己一天的目標,就判斷不出是多還是少。例如知道自己一天的目標是「蛋白質 75 g、脂肪 56 g、碳水化合物 302 g」,就能估計這個便當占了一天的幾成。
尤其脂肪每 1 g 約有 9 kcal,是蛋白質和碳水化合物的 2 倍以上,對公克數有概念後,就容易發現「原來從脂肪攝取的熱量比想像中多」。
手搖飲和甜點裡的添加糖、肥肉和奶油裡的飽和脂肪,吃太多都與肥胖和心臟、血管疾病的風險有關。在台灣,國民健康署建議添加糖不超過總熱量的 10%,國人膳食營養素參考攝取量建議飽和脂肪少於總熱量的 10%。以一天 2,000 kcal 的人來說,添加糖最多約 50 g,而一杯 700 毫升的全糖珍珠奶茶,添加糖就超過 60 公克,一杯就超過上限,用數字一看就明白。
這些上限是給全體國人參考的標準,不是個人健康狀態的診斷。對健康檢查的結果有疑慮時,建議帶著數字諮詢醫師或營養師。
公式與圖示
符號與用語解說
符號
| \(E\) | 每日目標熱量(kcal/天)。維持熱量(TDEE)加上目標調整值,再分配給三大營養素。取自英文 energy(能量)的第一個字母。 |
| \(B\) | 基礎代謝率(BMR),估算完全靜止不動時一天也會消耗的熱量(kcal/天)。取自英文 basal(基礎的)的第一個字母。 |
| \(k\) | 活動係數,表示一天消耗的熱量是基礎代謝率幾倍的倍率。本頁使用 1(不含活動)和 1.2~1.9 的 6 個等級。 |
| \(a\) | 目標調整值(kcal/天)。維持體重為 0,減重為負(−250、−500、−1,000),增重為正(+250、+500、+1,000)。取自英文 adjustment(調整)的第一個字母。 |
| \(r\) | 分配比例,該營養素占每日目標熱量的比例(例如均衡型的蛋白質為 0.15)。取自英文 ratio(比例)的第一個字母。 |
| \(u\) | 上限比例,該項目可占每日目標熱量的最大比例(添加糖 0.10=10%,飽和脂肪 0.10=10%)。取自英文 upper limit(上限)。 |
| \(c\) | 熱量換算係數(kcal/g),表示該營養素 1 g 有多少 kcal。本計算機使用阿特沃特係數(蛋白質 4、碳水化合物 4、脂肪 9),和台灣的營養標示相同。 |
| \(G\) | 要求的營養素每日公克數(g/天)。取自英文 gram(公克)的第一個字母。 |
| \(S\) | 添加糖或飽和脂肪上限的公克數(g/天),是不要超過的界線。取自英文 sugar(糖)和 saturated fat(飽和脂肪)。 |
| \(W\) | 體重(kg),用於基礎代謝率的公式。取自英文 weight(體重)的第一個字母。 |
| \(H\) | 身高(cm),用於基礎代謝率的公式。取自英文 height(身高)的第一個字母。 |
| \(A\) | 年齡(歲),用於基礎代謝率的公式。取自英文 age(年齡)的第一個字母。 |
| \(F\) | 以小數表示的體脂率(例如 20% → 0.20),用於 Katch-McArdle 公式。取自英文 fat(脂肪)的第一個字母。 |
用語
| 三大營養素比例 | 每天攝取的熱量中,蛋白質(Protein)、脂肪(Fat)、碳水化合物(Carbohydrate)各占百分之幾的分配,也可以用公克數表示。取三者英文字首,也稱為「PFC 比例」。健身圈常說的「算 macro」,就是依這些公克數安排飲食。 |
| 三大營養素 | 蛋白質、脂肪、碳水化合物,是提供身體能量(熱量)的 3 種營養素,也稱為巨量營養素或產熱營養素。維生素和礦物質沒有熱量,不包含在內。 |
| 蛋白質 | 構成肌肉、內臟、皮膚、頭髮的營養素。肉、魚、蛋、豆類、豆腐和豆漿等黃豆製品、乳製品中含量豐富。每 1 g 有 4 kcal(阿特沃特係數)。 |
| 脂肪 | 效率很高的能量來源,也是製造荷爾蒙和細胞膜的材料。營養學上也稱為脂質。油、奶油、肥肉、堅果中含量豐富。每 1 g 有 9 kcal(阿特沃特係數),是三大營養素中熱量最高的。 |
| 碳水化合物 | 身體和大腦的主要能量來源,也稱為醣類。米飯、麵包、麵、地瓜、水果、砂糖中含量豐富。包含可消化、成為能量的糖類和澱粉,以及不易消化的膳食纖維。每 1 g 有 4 kcal(阿特沃特係數)。 |
| 添加糖 | 製造或調理食物時加入的糖、糖漿、蜂蜜等,不包括水果、牛奶中天然存在的糖。吃太多與肥胖、蛀牙有關。國民健康署建議不超過總熱量的 10%。 |
| 飽和脂肪 | 主要存在於肥肉、奶油、豬油等動物性食物中的脂肪(營養學上稱為飽和脂肪酸)。吃太多會使血液中的 LDL 膽固醇升高,與心臟、血管疾病的風險有關。國人膳食營養素參考攝取量建議少於總熱量的 10%,本計算機以此為上限。台灣的營養標示也會另外標出飽和脂肪的公克數。 |
| TDEE | 每日總消耗熱量(kcal/天),也就是基礎代謝率加上運動和日常活動消耗的熱量,以「基礎代謝率 × 活動係數」估算,也稱為維持熱量。詳細內容請參考相關頁面「TDEE 計算機」。 |
| 基礎代謝率 | 維持體溫、呼吸、心跳等生命活動所需的最低能量(kcal/天),英文縮寫 BMR。本頁用推估公式(Mifflin-St Jeor 公式或 Katch-McArdle 公式)計算。 |
| 活動係數 | 表示運動和日常活動會額外消耗多少熱量的倍率。基礎代謝率乘以它就能估算 TDEE。本頁使用 1(不含活動)和 1.2~1.9 的 6 個等級。 |
| 去脂體重 | 體重扣掉體脂肪後,肌肉、骨骼、內臟等的重量,以「體重 × (1 − 體脂率)」計算。Katch-McArdle 公式就是由這個值估算基礎代謝率。 |
| 每日飲食指南 | 衛生福利部國民健康署發布的國人飲食建議(現行為民國 107 年版)。建議三大營養素占總熱量的比例為蛋白質 10~20%、脂質 20~30%、醣類(碳水化合物) 50~60%,並依熱量需求列出六大類食物的建議份數。 |
| 阿特沃特係數 | 各營養素每 1 g 的熱量:蛋白質 4、脂肪 9、碳水化合物 4 kcal/g(Atwater 係數)。台灣包裝食品營養標示的熱量也是用這組係數計算,本計算機用它把熱量換算成公克。 |
| 國人膳食營養素參考攝取量 | 衛生福利部國民健康署訂定的國人營養素攝取標準(英文簡稱 DRIs,現行為第八版)。第八版建議碳水化合物占總熱量 50~65%、4 歲以上的脂質占 20~30%、飽和脂肪少於 10%、反式脂肪少於 1%。本計算機的飽和脂肪上限以此為依據。 |
建議先了解的基礎知識
想要不只是按下按鈕,而是真正理解本頁的計算再使用,先了解下面這些會很有幫助。
| 比率與百分率(國小五、六年級,10~12 歲) |
|
| 小數的乘法與除法(國小五年級,10~11 歲) |
|
| 圓形圖與百分率(國小,10~12 歲) |
|
| 正數與負數(國中一年級,12~13 歲) |
|
| 四捨五入與概數(國小四年級,9~10 歲) |
|
用 Excel 計算的方法
| 性別(男性 M、女性 F) | M |
| 體重(kg) | 60 |
| 身高(cm) | 170 |
| 年齡(歲) | 25 |
| 活動係數 | 1.465 |
| 目標調整值(kcal/天;維持為 0、減重為負數) | -250 |
| 基礎代謝率(kcal/天) | =10*B2+6.25*B3-5*B4+IF(B1="M",5,-161) |
| TDEE(維持熱量,kcal/天) | =ROUND(B7*B5,0) |
| 每日目標熱量(kcal/天) | =B8+B6 |
| 每日目標熱量(kcal/天) | 2010 |
| 蛋白質比例 | 0.15 |
| 脂肪比例 | 0.25 |
| 碳水化合物比例 | 0.6 |
| 蛋白質(g/天) | =ROUND(B1*B2/4,0) |
| 脂肪(g/天) | =ROUND(B1*B3/9,0) |
| 碳水化合物(g/天) | =ROUND(B1*B4/4,0) |
| 每日目標熱量(kcal/天) | 2010 |
| 添加糖上限(g/天,熱量的 10%) | =ROUND(B1*0.1/4,0) |
| 飽和脂肪上限(g/天,熱量的 10%) | =ROUND(B1*0.1/9,0) |
第 1 個表格的 IF 函數,會在 B1 是「M」(男性)時加 5,其他(女性)時減 161,用來切換性別的常數。照範例的數值,會得到基礎代謝率 1542.5、TDEE 2260、目標熱量 2010。
第 2 個表格是均衡型(0.15、0.25、0.6,落在每日飲食指南建議範圍內的比例)的例子,會得到蛋白質 75、脂肪 56、碳水化合物 302。低脂型請把 B2~B4 改成 0.275、0.2、0.525,低醣型改成 0.3、0.3、0.4,高蛋白型改成 0.35、0.225、0.425。
第 3 個表格會得到添加糖 50、飽和脂肪 22。只要把 B 欄改成自己的數值就能使用。
用 Google 試算表計算的方法
| 性別(男性 M、女性 F) | M |
| 體重(kg) | 60 |
| 身高(cm) | 170 |
| 年齡(歲) | 25 |
| 活動係數 | 1.465 |
| 目標調整值(kcal/天;維持為 0、減重為負數) | -250 |
| 基礎代謝率(kcal/天) | =10*B2+6.25*B3-5*B4+IF(B1="M",5,-161) |
| TDEE(維持熱量,kcal/天) | =ROUND(B7*B5,0) |
| 每日目標熱量(kcal/天) | =B8+B6 |
| 每日目標熱量(kcal/天) | 2010 |
| 蛋白質比例 | 0.15 |
| 脂肪比例 | 0.25 |
| 碳水化合物比例 | 0.6 |
| 蛋白質(g/天) | =ROUND(B1*B2/4,0) |
| 脂肪(g/天) | =ROUND(B1*B3/9,0) |
| 碳水化合物(g/天) | =ROUND(B1*B4/4,0) |
| 每日目標熱量(kcal/天) | 2010 |
| 添加糖上限(g/天,熱量的 10%) | =ROUND(B1*0.1/4,0) |
| 飽和脂肪上限(g/天,熱量的 10%) | =ROUND(B1*0.1/9,0) |
用 Python 計算的方法
sex = "男性" # "男性" 或 "女性"
age = 25 # 年齡(歲)
height_cm = 170 # 身高(cm)
weight_kg = 60 # 體重(kg)
activity_factor = 1.465 # 活動係數(1.2~1.9。選法請參考相關頁面「TDEE 計算機」)
goal_adjust = -250 # 目標調整值(kcal/天。維持為 0,減重為負,增重為正)
protein_ratio = 0.15 # 蛋白質比例(均衡型,落在每日飲食指南的建議範圍內)
fat_ratio = 0.25 # 脂肪比例
carb_ratio = 0.60 # 碳水化合物比例
# 基礎代謝率(Mifflin-St Jeor 公式)→ TDEE → 每日目標熱量
bmr = 10 * weight_kg + 6.25 * height_cm - 5 * age
bmr = bmr + 5 if sex == "男性" else bmr - 161
tdee = round(bmr * activity_factor)
calories = tdee + goal_adjust
# 各營養素的公克數(阿特沃特係數:蛋白質 4、碳水化合物 4、脂肪 9 kcal/g)
protein_g = round(calories * protein_ratio / 4)
fat_g = round(calories * fat_ratio / 9)
carb_g = round(calories * carb_ratio / 4)
# 上限(添加糖為熱量的 10%=國民健康署,飽和脂肪為 10%=國人膳食營養素參考攝取量)
sugar_max_g = round(calories * 0.10 / 4)
sat_fat_max_g = round(calories * 0.10 / 9)
print(f"每日目標熱量: {calories} kcal/天")
print(f"蛋白質: {protein_g} g/天 / 脂肪: {fat_g} g/天 / 碳水化合物: {carb_g} g/天")
print(f"添加糖上限: {sugar_max_g} g/天 / 飽和脂肪上限: {sat_fat_max_g} g/天")
用 LaTeX 等數學式語言的寫法(可直接複製)
E = B × k + a
E = B \times k + a
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>E</mi><mo>=</mo>
<mi>B</mi><mo>×</mo><mi>k</mi>
<mo>+</mo><mi>a</mi>
</mrow>
</math>
E = B xx k + a
b*k + a
E := B*k + a;
E = B*k + a;
E = B × k + a
G = E × r ÷ c
G = \dfrac{E \times r}{c}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>G</mi><mo>=</mo>
<mfrac>
<mrow><mi>E</mi><mo>×</mo><mi>r</mi></mrow>
<mi>c</mi>
</mfrac>
</mrow>
</math>
G = (E xx r) / c
e*r/c
G := E*r/c;
G = E*r/c;
G = E × r / c
S = E × u ÷ c
S = \dfrac{E \times u}{c}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>S</mi><mo>=</mo>
<mfrac>
<mrow><mi>E</mi><mo>×</mo><mi>u</mi></mrow>
<mi>c</mi>
</mfrac>
</mrow>
</math>
S = (E xx u) / c
u*e/c
S := u*E/c;
S = u*E/c;
S = E × u / c
請 ChatGPT 幫忙計算的方法
你是三大營養素比例計算的助理。請務必實際執行 Python 程式碼來進行下列計算,並只根據執行結果的數值回答(不要用心算或猜測回答)。 一位 25 歲、身高 170 公分、體重 60 公斤、有中度運動習慣(活動係數 1.465)的男性,想要緩慢減重(每天 −250 kcal)。 1. 用 Mifflin-St Jeor 公式(男性:基礎代謝率 = 10 × 體重 kg + 6.25 × 身高 cm − 5 × 年齡 + 5)求基礎代謝率,乘以活動係數 1.465 後四捨五入到整數(TDEE),再加上 −250 kcal,求出每日目標熱量。 2. 把目標熱量依均衡型(蛋白質 15%、脂肪 25%、碳水化合物 60%,落在台灣國民健康署每日飲食指南建議範圍內的比例)分配,除以阿特沃特係數(蛋白質 4、碳水化合物 4、脂肪 9 kcal/g),把各營養素的公克數四捨五入到整數。 3. 也請求出添加糖的上限(熱量的 10% ÷ 4 kcal/g,國民健康署的建議)和飽和脂肪的上限(熱量的 10% ÷ 9 kcal/g,國人膳食營養素參考攝取量第八版)。 請把計算用的公式和執行結果的數值整理成表格。另外,請附註這是給健康成人參考的標準,不是醫療建議。
使用方法
-
1輸入數值在輸入欄中輸入要計算的數值
-
2計算按下「計算」按鈕
-
3查看結果計算結果會立即顯示。計算的思路和公式的解說,也都能在同一個頁面查看
DataChef 的特色
不需專業知識,操作直覺又簡單
無須登錄任何個人資料
按下「下載」後自動刪除檔案
無須標註來源出處
亦無須事先取得商用授權