請以天、小時、分、秒輸入時間 1 和時間 2。會同時算出和(時間 1 + 時間 2)與差(時間 1 − 時間 2)。
這個頁面可以做什麼
- 可以計算「1 天 2 小時 30 分 + 23 小時 45 分 10 秒」這類,以天、小時、分、秒表示的兩段時間(時間長度)的加減
- 同時算出並顯示和(時間 1 + 時間 2)與差(時間 1 − 時間 2)
- 60 秒=1 分、60 分=1 小時、24 小時=1 天的進位與退位會自動處理,也會顯示換算成秒的計算過程
- 相減的結果是負數時,也會清楚顯示成「−1 天 2 小時」的樣子
- 公式的淺顯解說,以及可直接複製到 Excel、Google 試算表、Python 的公式,也都整理在這個頁面
這個計算有什麼用?
星期一工作 8 小時 45 分、星期二工作 7 小時 50 分,兩天合計是 16 小時 35 分(分是 45 + 50 = 95,進位成 1 小時 35 分;小時是 8 + 7 + 1 = 16)。
計算薪資和管理出勤時,會像這樣把每天的工時加起來,再和正常工時相減求出加班時數(台灣的勞動基準法規定,正常工時每日不超過 8 小時、每週不超過 40 小時)。時間的加減,是和每個上班族薪水直接相關的計算。
馬拉松這次的成績是 3 小時 28 分 50 秒,上次是 3 小時 45 分 30 秒,差距就是縮短了 16 分 40 秒(3:45:30 − 3:28:50 = 0:16:40)。
田徑、游泳、自行車等計時項目,會以秒為單位計算和個人最佳成績、和對手的差距,確認練習成果與配速。
連續看 1 小時 48 分和 2 小時 15 分的影片,合計是 4 小時 3 分(分是 48 + 15 = 63,要進位)。
剪輯影片時加總素材的長度,或估算播放清單、會議錄影總共有幾小時,正是這種時間的加法。
備料 30 分、燉煮 1 小時 45 分的料理,從開始到完成合計要 2 小時 15 分。
把多個步驟的時間加起來,就知道「總共要花幾小時」;反過來從用餐的時刻往回減,也能估算「幾點要開始動手」。安排工作流程時,也能用同樣的計算。
目標睡眠時間是 7 小時,今天實際只睡了 5 小時 30 分,就是不足 1 小時 30 分。
睡眠紀錄 App 的「和目標的差距」,也是用這個減法算出來的。把不足的部分用數字呈現,就比較容易下定決心「今晚要早點睡」。
公式
符號與用語解說
符號
| \(T_1\)、\(T_2\) | T 下標 1、T 下標 2 | 要計算的兩段時間(時間長度),也就是時間 1(\(T_1\))和時間 2(\(T_2\))。(例如:\(T_1\) = 1 天 2 小時 30 分,\(T_2\) = 23 小時 45 分 10 秒) |
| \(S\) | S | 兩段時間的和(時間 1 + 時間 2),是英文 sum(和)的第一個字母。 |
| \(D\) | D(大寫) | 兩段時間的差(時間 1 − 時間 2),是英文 difference(差)的第一個字母。請和小寫的 \(d\)(天數)區分。 |
| \(d\)、\(h\)、\(m\)、\(s\) | d、h、m、s | 時間的組成:天數(\(d\))、小時(\(h\))、分(\(m\))、秒(\(s\))。「1 天 2 小時 30 分」就是 \(d = 1\)、\(h = 2\)、\(m = 30\)、\(s = 0\)。分別是英文 day、hour、minute、second 的第一個字母。 |
| \(T\) | T(大寫) | 把時間換算成秒的值,用 \(T = 86400d + 3600h + 60m + s\) 求出。(例如:1 天 2 小時 30 分 → 95400 秒) |
| \(q\)、\(r\) | q、r | 把換算成秒的值除以 86400 時的商(天數 \(q\))和餘數(剩下的秒 \(r\))。\(180910 \div 86400 = 2 \cdots 8110\) 時,\(q = 2\)、\(r = 8110\)。 |
用語
| 時刻 | 像「8 時 30 分」這樣的某一個時間點。要和「2 小時 30 分」這種表示長度的「時間量」區分。時刻的計算(幾小時後是幾點?)請使用相關頁面中的日期時間加減計算機。 |
| 時間量 | 像「2 小時 30 分」這樣的時間長度。要和「8 時 30 分」這種表示某一個時間點的「時刻」區分。這個頁面加減的是表示長度的時間量。 |
| 六十進位 | 滿 60 就成為上一個單位的計數方法。60 秒進位成 1 分,60 分進位成 1 小時。要注意只有小時和天之間是滿 24 進位。 |
| 進位 | 加法中,把超過單位上限的部分送到上一個單位(30 分 + 45 分 = 75 分 → 1 小時 15 分)。時間的計算是以 60 或 24 為單位進位。 |
| 退位 | 減法中,不夠減時向上一個單位借來(1 小時 15 分 − 30 分 → 75 分 − 30 分 = 45 分)。時間的計算是以 60 或 24 為單位退位。 |
| 商 | 除法中「可以分成幾份」的答案。\(180910 \div 86400 = 2 \cdots 8110\) 時,商是 \(2\),也就是天數。 |
| 餘數 | 除法中「除不盡而剩下的部分」。\(180910 \div 86400 = 2 \cdots 8110\) 時,餘數是 \(8110\),也就是不滿 1 天而剩下的秒數。 |
| 絕對值 | 去掉正負號後的數的大小。−93784 秒的絕對值是 93784 秒。把負的時間分成天、小時、分、秒時,要先用絕對值來分,再在最前面加上負號。 |
建議先了解的基礎知識
為了能「理解意義」地使用這個頁面的計算,這裡整理了建議先了解的基礎知識。
遇到不懂的地方時,回頭複習這張表的內容是最快的方法。
| 時刻與時間量(國小二~三年級,7~9 歲) |
|
| 進位、退位的加減法(國小二年級,7~8 歲) |
|
| 有餘數的除法(國小三年級,8~9 歲) |
|
| 正數與負數(國中七年級,12~13 歲) |
|
用 Excel 計算的方法
| 時間 1:天 | 1 |
| 時間 1:小時 | 2 |
| 時間 1:分 | 30 |
| 時間 1:秒 | 0 |
| 時間 2:天 | 0 |
| 時間 2:小時 | 23 |
| 時間 2:分 | 45 |
| 時間 2:秒 | 10 |
| 時間 1 換算成秒 | =B1*86400+B2*3600+B3*60+B4 |
| 時間 2 換算成秒 | =B5*86400+B6*3600+B7*60+B8 |
| 和(秒) | =B9+B10 |
| 差(秒) | =B9-B10 |
| 和:天 | =QUOTIENT(B11,86400) |
| 和:小時 | =QUOTIENT(MOD(B11,86400),3600) |
| 和:分 | =QUOTIENT(MOD(B11,3600),60) |
| 和:秒 | =MOD(B11,60) |
| 差:天 | =QUOTIENT(ABS(B12),86400) |
| 差:小時 | =QUOTIENT(MOD(ABS(B12),86400),3600) |
| 差:分 | =QUOTIENT(MOD(ABS(B12),3600),60) |
| 差:秒 | =MOD(ABS(B12),60) |
| 天 | 1 |
| 小時 | 2 |
| 分 | 30 |
| 秒 | 0 |
| 換算成秒的值 | =B1*86400+B2*3600+B3*60+B4 |
| 換算成秒的值 | 180910 |
| 天 | =QUOTIENT(B1,86400) |
| 小時 | =QUOTIENT(MOD(B1,86400),3600) |
| 分 | =QUOTIENT(MOD(B1,3600),60) |
| 秒 | =MOD(B1,60) |
差的分解使用了 ABS(絕對值)。B12 是負數時,B17~B20 會顯示去掉正負號的組成,請看 B12 的正負號,在前面加上負號來讀。
第二個表格的答案是 95400(秒),第三個表格的答案是 2 天、2 小時、15 分、10 秒。只要把 B 欄改成自己的數值就能使用。
用 Google 試算表計算的方法
| 時間 1:天 | 1 |
| 時間 1:小時 | 2 |
| 時間 1:分 | 30 |
| 時間 1:秒 | 0 |
| 時間 2:天 | 0 |
| 時間 2:小時 | 23 |
| 時間 2:分 | 45 |
| 時間 2:秒 | 10 |
| 時間 1 換算成秒 | =B1*86400+B2*3600+B3*60+B4 |
| 時間 2 換算成秒 | =B5*86400+B6*3600+B7*60+B8 |
| 和(秒) | =B9+B10 |
| 差(秒) | =B9-B10 |
| 和:天 | =QUOTIENT(B11,86400) |
| 和:小時 | =QUOTIENT(MOD(B11,86400),3600) |
| 和:分 | =QUOTIENT(MOD(B11,3600),60) |
| 和:秒 | =MOD(B11,60) |
| 差:天 | =QUOTIENT(ABS(B12),86400) |
| 差:小時 | =QUOTIENT(MOD(ABS(B12),86400),3600) |
| 差:分 | =QUOTIENT(MOD(ABS(B12),3600),60) |
| 差:秒 | =MOD(ABS(B12),60) |
| 天 | 1 |
| 小時 | 2 |
| 分 | 30 |
| 秒 | 0 |
| 換算成秒的值 | =B1*86400+B2*3600+B3*60+B4 |
| 換算成秒的值 | 180910 |
| 天 | =QUOTIENT(B1,86400) |
| 小時 | =QUOTIENT(MOD(B1,86400),3600) |
| 分 | =QUOTIENT(MOD(B1,3600),60) |
| 秒 | =MOD(B1,60) |
用 Python 計算的方法
# 時間 1 和時間 2(天, 小時, 分, 秒)
days1, hours1, minutes1, seconds1 = 1, 2, 30, 0
days2, hours2, minutes2, seconds2 = 0, 23, 45, 10
total_seconds1 = days1 * 86400 + hours1 * 3600 + minutes1 * 60 + seconds1
total_seconds2 = days2 * 86400 + hours2 * 3600 + minutes2 * 60 + seconds2
sum_seconds = total_seconds1 + total_seconds2 # 和(秒)
diff_seconds = total_seconds1 - total_seconds2 # 差(秒)
def format_duration(total_seconds):
# 把秒換回「2 天 2 小時 15 分 10 秒」(省略為 0 的單位,負數只在最前面加一個負號)
if total_seconds == 0:
return "0 秒"
sign = "−" if total_seconds < 0 else ""
rest = abs(total_seconds)
days, rest = divmod(rest, 86400)
hours, rest = divmod(rest, 3600)
minutes, seconds = divmod(rest, 60)
parts = []
if days: parts.append(f"{days} 天")
if hours: parts.append(f"{hours} 小時")
if minutes: parts.append(f"{minutes} 分")
if seconds: parts.append(f"{seconds} 秒")
return sign + " ".join(parts)
print(f"時間 1:{total_seconds1} 秒,時間 2:{total_seconds2} 秒")
print(f"和:{format_duration(sum_seconds)}({sum_seconds} 秒)")
print(f"差:{format_duration(diff_seconds)}({diff_seconds} 秒)")
用 LaTeX 等數學式語言的寫法(可直接複製)
S = T₁ + T₂, D = T₁ − T₂
S = T_1 + T_2, \quad D = T_1 - T_2
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>S</mi><mo>=</mo>
<msub><mi>T</mi><mn>1</mn></msub><mo>+</mo>
<msub><mi>T</mi><mn>2</mn></msub>
<mo>,</mo><mspace width="0.7em"/>
<mi>D</mi><mo>=</mo>
<msub><mi>T</mi><mn>1</mn></msub><mo>−</mo>
<msub><mi>T</mi><mn>2</mn></msub>
</mrow>
</math>
S = T_1 + T_2, D = T_1 - T_2
sum = t1 + t2; difference = t1 - t2
S := T1 + T2; difference := T1 - T2;
S = T1 + T2; D = T1 - T2;
S = T_1 + T_2, D = T_1 - T_2
T = 86400d + 3600h + 60m + s
T = 86400d + 3600h + 60m + s
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>T</mi><mo>=</mo>
<mn>86400</mn><mi>d</mi>
<mo>+</mo><mn>3600</mn><mi>h</mi>
<mo>+</mo><mn>60</mn><mi>m</mi>
<mo>+</mo><mi>s</mi>
</mrow>
</math>
T = 86400d + 3600h + 60m + s
totalSeconds = 86400*d + 3600*h + 60*m + s
T := 86400*d + 3600*h + 60*m + s;
T = 86400*d + 3600*h + 60*m + s;
T = 86400d + 3600h + 60m + s
T = 86400q + r
T = 86400q + r
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>T</mi><mo>=</mo>
<mn>86400</mn><mi>q</mi>
<mo>+</mo><mi>r</mi>
</mrow>
</math>
T = 86400q + r
q = Quotient[t, 86400]; r = Mod[t, 86400]
q := iquo(T, 86400); r := irem(T, 86400);
q = floor(T/86400); r = mod(T, 86400);
T = 86400q + r
請 ChatGPT 幫忙計算的方法
你是時間計算助理。請務必實際執行 Python 程式碼來進行下面的計算,並只根據執行結果的數值回答(不要用心算或猜測作答)。 請針對時間 1「1 天 2 小時 30 分 0 秒」和時間 2「0 天 23 小時 45 分 10 秒」,求出和(時間 1 + 時間 2)與差(時間 1 − 時間 2)。 請先各自換算成秒再加減,然後以 60 秒=1 分、60 分=1 小時、24 小時=1 天進位,換回「◯ 天 ◯ 小時 ◯ 分 ◯ 秒」的形式。差是負數時,請把絕對值分開後在前面加上負號。 請列出計算用的程式碼、過程中換算成秒的值,以及最後的結果。
使用方法
-
1輸入數值在輸入欄中輸入要計算的數值
-
2計算按下「計算」按鈕
-
3查看結果計算結果會立即顯示。計算的思路和公式的解說,也都能在同一個頁面查看
DataChef 的特色
不需專業知識,操作直覺又簡單
無須登錄任何個人資料
按下「下載」後自動刪除檔案
無須標註來源出處
亦無須事先取得商用授權