請輸入兩個複數 z₁ = a + bi、z₂ = c + di 的實部和虛部,再選擇要計算的運算(+−×÷)。下方的式子和輸入欄連動,直接改寫式子中的數字也能計算。
這個頁面可以做什麼
- 只要輸入實部、虛部並選擇運算,就能立即計算兩個複數 \(z_1 = a+bi\)、\(z_2 = c+di\) 的加法、減法、乘法、除法
- 答案以 \(\dfrac{11}{25} + \dfrac{2}{25}i\) 這種約分好的分數(精確值)的 \(a+bi\) 形式顯示。除法會顯示把分子、分母同乘以分母的共軛複數,讓分母變成實數的「分母實數化」過程;乘法會顯示展開後把 \(i^2\) 換成 \(-1\) 的過程
- 另外也會顯示計算結果的共軛複數 \(\overline{z}\) 和絕對值 \(|z|\)。絕對值會像 \(|3+4i| = 5\)、\(|1+i| = \sqrt{2}\) 這樣,以化簡根號後的精確值回答
- 計算結果也能用複數平面(高斯平面)的圖確認,\(z_1\)、\(z_2\) 和計算結果各點的位置關係一目了然
- 實部、虛部除了小數、負數,也可以輸入 3/4 這樣的分數
這個計算有什麼用?
家裡插座的交流電,電壓和電流會像波一樣起伏,而且不同的元件會讓波的時間點(相位)錯開。電機工程的標準做法,是把這個「大小」和「錯開程度」合成一個複數(阻抗)來表示,只用複數的四則運算就完成電路的計算。
大學電機系的電路學課程和電機技師考試都會用到複數的計算。從手機充電器到發電廠,凡是有交流電流過的地方,設計都靠複數的計算支撐。
聲音、電波這類「波」,可以用一種使用複數的計算——傅立葉轉換,分解成「含有多少各種高低的聲音(頻率)」。手機通訊(Wi-Fi、5G)、音樂壓縮、降噪和語音辨識,內部都在大量進行這種複數計算。
複數的強項是能用一個數同時處理波的「大小」和「時間點」,所以在訊號處理的領域,複數比實數更是主角。傅立葉轉換本身是大學以後的內容,但其中進行的,就是高中學的複數乘法和加法。
設計飛機的自動駕駛、無人機、機器人這類「抑制晃動、保持穩定」的機器時,會看表示系統性質的方程式的解(複數)落在複數平面的哪裡,來判定穩定還是不穩定。解的實部為負,晃動就會平息;為正,就會越晃越大。
在這個領域,解在複數平面上的位置,直接就是「能不能安全飛行」的判斷依據。處理這種穩定性判定的控制工程,是大學以後學習的內容。
把平面上的點 \((x,\ y)\) 看成複數 \(x+yi\),只要乘以絕對值為 1 的複數,就能計算「繞原點的旋轉」。例如乘以 \(i\) 就是旋轉 90 度。2D 遊戲中轉動角色或子彈的方向,可以直接利用這個性質。
3D 遊戲和手機偵測姿態時使用的四元數,就是把這種「用複數表示旋轉」的想法推廣到三維空間。
一元二次方程式在判別式 \(D = b^2 - 4ac\) 為負時沒有實數解,但把數系擴大到複數後,連 \(x^2 = -1\) 也有解 \(x = \pm i\),任何二次方程式、三次方程式都一定有解(代數基本定理)。
「無解」的例外不再存在,所以不只數學,物理和工程的理論也都以複數為前提建立。高中的複數計算,就是它的入口。
公式與圖形
符號與用語解說
符號
| \(i\) | i | 虛數單位,被定義為平方後等於 \(-1\) 的數(\(i^2 = -1\))。名稱來自 imaginary number(想像的數)的字首。 |
| \(z\) | z | 常用來表示複數的文字。為了和用 \(x\)、\(y\) 表示的實數變數區分,複數習慣用 \(z\)、\(w\) 表示。 |
| \(z_1,\ z_2\) | z 下標 1、z 下標 2 | 第 1 個、第 2 個複數。右下的小數字(下標)是表示「第幾個」的編號,和寫在右上方的乘方指數不同。 |
| \(a,\ b,\ c,\ d\) | a、b、c、d | 在這個頁面,\(z_1 = a+bi\) 的 \(a\) 是實部、\(b\) 是虛部,\(z_2 = c+di\) 的 \(c\) 是實部、\(d\) 是虛部。表示已知的數時,習慣用字母表前面的字母。 |
| \(\overline{z}\) | z bar | \(z\) 的共軛複數,也就是把 \(z = a+bi\) 的虛部變號後的 \(a-bi\)。上方的橫線(bar)是表示「成對的另一半」的符號。 |
| \(|z|\) | z 的絕對值 | 複數 \(z\) 的絕對值,也就是在複數平面上從原點到 \(z\) 的距離,用 \(|a+bi| = \sqrt{a^2+b^2}\) 計算。和實數的絕對值符號一樣,用兩條直線表示。 |
用語
| 複數 | 可以寫成 \(a+bi\)(\(a\)、\(b\) 是實數)形式的數。是把實數和虛數合在一起的更大的數系,在複數的範圍內,任何二次方程式一定有解。 |
| 虛數 | 不是實數的複數,也就是 \(a+bi\) 中虛部 \(b\) 不是 0 的數。名字雖然叫「虛」數,卻是在電學、物理計算中實際派上用場的數。 |
| 虛數單位 | 指 \(i\)。被定義為滿足 \(i^2 = -1\) 的數,所有虛數都能用 \(i\) 表示。 |
| 實部 | \(a+bi\) 的 \(a\)。是複數的「實數部分」,在複數平面上相當於橫軸(實軸)方向的坐標。 |
| 虛部 | \(a+bi\) 的 \(b\)(不含 \(i\))。在複數平面上相當於縱軸(虛軸)方向的坐標。例如 \(3-2i\) 的虛部是 \(-2\)。 |
| 純虛數 | 實部是 0、虛部不是 0 的複數(\(2i\)、\(-3i\) 等)。在複數平面上落在虛軸上。 |
| 共軛複數 | \(a+bi\) 對應的 \(a-bi\)。最大的特徵是兩者相乘會得到 \((a+bi)(a-bi) = a^2+b^2\) 這個大於或等於 0 的實數,在除法的分母實數化中大顯身手。「共軛」是「成對、一起作用」的意思。 |
| 絕對值 | 在複數平面上與原點的距離 \(\sqrt{a^2+b^2}\)。是把實數的絕對值(數線上與 0 的距離)推廣到平面上。 |
| 複數平面 | 以橫軸為實部、縱軸為虛部,把複數 \(a+bi\) 表示成點 \((a,\ b)\) 的平面,也稱為高斯平面。台灣在高三選修數學中學習,這個頁面也把它當成讓複數「看得見」的工具,用在圖上。 |
| 實軸 | 複數平面的橫軸,是實數排列的軸。實數是虛部為 0 的複數,所以落在實軸上。 |
| 虛軸 | 複數平面的縱軸,是純虛數(像 \(2i\) 這樣實部為 0 的複數)排列的軸。 |
| 分母實數化 | 分母是複數的分數,把分子、分母同乘以分母的共軛複數,讓分母變成實數。是國中學的「分母有理化」(消去分母根號的操作)的複數版。 |
| 展開 | 把有括號的式子去掉括號,改寫成各項相加減的形式,也叫「乘開」。就像 \((a+b)(c+d) = ac+ad+bc+bd\),把一個括號裡的每一項,分別乘以另一個括號裡的每一項。 |
| 同類項 | 文字部分相同的項。複數的加減法中,把有 \(i\) 的項(虛部)和沒有 \(i\) 的項(實部)分別當成同類項合併。 |
| 判別式 | 判定一元二次方程式 \(ax^2+bx+c=0\) 的解是哪一種的式子 \(D = b^2-4ac\)。\(D < 0\) 時沒有實數解,但在複數的範圍內有 \(x = \dfrac{-b \pm \sqrt{-D}\,i}{2a}\) 這樣的虛數解(虛根)。這是複數出現在高中數學的第一個入口。 |
建議先了解的基礎知識
為了能「理解意思」地使用這個頁面的計算,這裡整理了建議先了解的基礎知識。
卡住的時候,回到這裡的內容複習是最快的方法。
| 代數式的展開與同類項(國中七~八年級,12~14 歲) |
|
| 平方根與根號(國中八年級,13~14 歲) |
|
| 分母有理化(國中八年級,13~14 歲) |
|
| 坐標平面與畢氏定理(國中七~八年級,12~14 歲) |
|
| 一元二次方程式與判別式(國中八年級~高中,13~18 歲) |
|
| 分數的計算(國小五年級~國中七年級,10~13 歲) |
|
用 Excel 計算的方法
| z₁ 的實部 a | 1 |
| z₁ 的虛部 b | 2 |
| z₂ 的實部 c | 3 |
| z₂ 的虛部 d | 4 |
| 複數 z₁ | =COMPLEX(B1,B2) |
| 複數 z₂ | =COMPLEX(B3,B4) |
| 和 z₁+z₂ | =IMSUM(B5,B6) |
| 差 z₁−z₂ | =IMSUB(B5,B6) |
| 積 z₁×z₂ | =IMPRODUCT(B5,B6) |
| 商 z₁÷z₂ | =IMDIV(B5,B6) |
| 實部 a | 3 |
| 虛部 b | 4 |
| 複數 z | =COMPLEX(B1,B2) |
| 共軛複數 | =IMCONJUGATE(B3) |
| 絕對值 |z| | =IMABS(B3) |
| z₁ 的實部 a | 1 |
| z₁ 的虛部 b | 2 |
| z₂ 的實部 c | 3 |
| z₂ 的虛部 d | 4 |
| 分母 c²+d² | =B3^2+B4^2 |
| 商的實部 (ac+bd)÷(c²+d²) | =(B1*B3+B2*B4)/B5 |
| 商的虛部 (bc−ad)÷(c²+d²) | =(B2*B3-B1*B4)/B5 |
第 1 個表是 z₁ = 1+2i、z₂ = 3+4i 的例子,和顯示為「4+6i」、差為「-2-2i」、積為「-5+10i」、商為「0.44+0.08i」(結果不是數值,而是字串)。
第 2 個表是 z = 3+4i 的例子,共軛複數是「3-4i」,絕對值是 5(只有 IMABS 會傳回一般的數值)。
第 3 個表不靠複數函數,而是照「分母實數化」的公式計算除法來確認。商的實部是 0.44(= 11/25),虛部是 0.08(= 2/25),和 IMDIV 的結果一致。「^」是乘方、「*」是乘法、「/」是除法的符號。
用 Google 試算表計算的方法
| z₁ 的實部 a | 1 |
| z₁ 的虛部 b | 2 |
| z₂ 的實部 c | 3 |
| z₂ 的虛部 d | 4 |
| 複數 z₁ | =COMPLEX(B1,B2) |
| 複數 z₂ | =COMPLEX(B3,B4) |
| 和 z₁+z₂ | =IMSUM(B5,B6) |
| 差 z₁−z₂ | =IMSUB(B5,B6) |
| 積 z₁×z₂ | =IMPRODUCT(B5,B6) |
| 商 z₁÷z₂ | =IMDIV(B5,B6) |
| 實部 a | 3 |
| 虛部 b | 4 |
| 複數 z | =COMPLEX(B1,B2) |
| 共軛複數 | =IMCONJUGATE(B3) |
| 絕對值 |z| | =IMABS(B3) |
| z₁ 的實部 a | 1 |
| z₁ 的虛部 b | 2 |
| z₂ 的實部 c | 3 |
| z₂ 的虛部 d | 4 |
| 分母 c²+d² | =B3^2+B4^2 |
| 商的實部 (ac+bd)÷(c²+d²) | =(B1*B3+B2*B4)/B5 |
| 商的虛部 (bc−ad)÷(c²+d²) | =(B2*B3-B1*B4)/B5 |
用 Python 計算的方法
from fractions import Fraction
import math
# z1 = a + bi、z2 = c + di 的實部和虛部(3/4 這樣的分數可以寫成 Fraction(3, 4))
z1_real, z1_imag = Fraction(1), Fraction(2)
z2_real, z2_imag = Fraction(3), Fraction(4)
# 和、差:實部和實部、虛部和虛部分別合併
add_real, add_imag = z1_real + z2_real, z1_imag + z2_imag
sub_real, sub_imag = z1_real - z2_real, z1_imag - z2_imag
# 積:展開後代入 i^2 = -1 得到的公式 (ac-bd) + (ad+bc)i
mul_real = z1_real * z2_real - z1_imag * z2_imag
mul_imag = z1_real * z2_imag + z1_imag * z2_real
# 商:分母實數化。分母會變成 c^2 + d^2 這個實數
denominator = z2_real ** 2 + z2_imag ** 2
div_real = (z1_real * z2_real + z1_imag * z2_imag) / denominator
div_imag = (z1_imag * z2_real - z1_real * z2_imag) / denominator
# 商的絕對值:實部的平方加虛部的平方,再開平方根
abs_squared = div_real ** 2 + div_imag ** 2
abs_value = math.sqrt(abs_squared)
# 轉成 a+bi 形式的字串(虛部為負時,以 -2 - 2i 這樣的減法形式顯示)
def to_complex_str(real, imag):
sign = "-" if imag < 0 else "+"
return f"{real} {sign} {abs(imag)}i"
print(f"和: {to_complex_str(add_real, add_imag)}")
print(f"差: {to_complex_str(sub_real, sub_imag)}")
print(f"積: {to_complex_str(mul_real, mul_imag)}")
print(f"商: {to_complex_str(div_real, div_imag)}")
print(f"商的絕對值的平方(分數): {abs_squared}")
print(f"商的絕對值(小數): {abs_value}")
用 LaTeX 等數學式語言的寫法(可直接複製)
(a+bi) + (c+di) = (a+c) + (b+d)i
(a+bi) + (c+di) = (a+c) + (b+d)i
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mo>(</mo><mi>a</mi><mo>+</mo><mi>b</mi><mi>i</mi><mo>)</mo>
<mo>+</mo>
<mo>(</mo><mi>c</mi><mo>+</mo><mi>d</mi><mi>i</mi><mo>)</mo>
<mo>=</mo>
<mo>(</mo><mi>a</mi><mo>+</mo><mi>c</mi><mo>)</mo>
<mo>+</mo>
<mo>(</mo><mi>b</mi><mo>+</mo><mi>d</mi><mo>)</mo><mi>i</mi>
</mrow>
</math>
(a+bi) + (c+di) = (a+c) + (b+d)i
ComplexExpand[(a + b I) + (c + d I)]
evalc((a + b*I) + (c + d*I));
z = (a + b*1i) + (c + d*1i);
(a+bi)+(c+di)=(a+c)+(b+d)i
(a+bi)(c+di) = (ac−bd) + (ad+bc)i
(a+bi)(c+di) = (ac-bd) + (ad+bc)i
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mo>(</mo><mi>a</mi><mo>+</mo><mi>b</mi><mi>i</mi><mo>)</mo>
<mo>(</mo><mi>c</mi><mo>+</mo><mi>d</mi><mi>i</mi><mo>)</mo>
<mo>=</mo>
<mo>(</mo><mi>a</mi><mi>c</mi><mo>−</mo><mi>b</mi><mi>d</mi><mo>)</mo>
<mo>+</mo>
<mo>(</mo><mi>a</mi><mi>d</mi><mo>+</mo><mi>b</mi><mi>c</mi><mo>)</mo><mi>i</mi>
</mrow>
</math>
(a+bi)(c+di) = (ac-bd) + (ad+bc)i
ComplexExpand[(a + b I) (c + d I)]
evalc((a + b*I) * (c + d*I));
z = (a + b*1i) * (c + d*1i);
(a+bi)(c+di)=(ac-bd)+(ad+bc)i
(a+bi)/(c+di) = (ac+bd)/(c²+d²) + {(bc−ad)/(c²+d²)}i
\frac{a+bi}{c+di} = \frac{ac+bd}{c^{2}+d^{2}} + \frac{bc-ad}{c^{2}+d^{2}}\,i
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mfrac>
<mrow><mi>a</mi><mo>+</mo><mi>b</mi><mi>i</mi></mrow>
<mrow><mi>c</mi><mo>+</mo><mi>d</mi><mi>i</mi></mrow>
</mfrac>
<mo>=</mo>
<mfrac>
<mrow><mi>a</mi><mi>c</mi><mo>+</mo><mi>b</mi><mi>d</mi></mrow>
<mrow><msup><mi>c</mi><mn>2</mn></msup><mo>+</mo><msup><mi>d</mi><mn>2</mn></msup></mrow>
</mfrac>
<mo>+</mo>
<mfrac>
<mrow><mi>b</mi><mi>c</mi><mo>−</mo><mi>a</mi><mi>d</mi></mrow>
<mrow><msup><mi>c</mi><mn>2</mn></msup><mo>+</mo><msup><mi>d</mi><mn>2</mn></msup></mrow>
</mfrac>
<mi>i</mi>
</mrow>
</math>
(a+bi)/(c+di) = (ac+bd)/(c^2+d^2) + ((bc-ad)/(c^2+d^2))i
ComplexExpand[(a + b I)/(c + d I)]
evalc((a + b*I) / (c + d*I));
z = (a + b*1i) / (c + d*1i);
(a+bi)/(c+di)=(ac+bd)/(c^2+d^2)+((bc-ad)/(c^2+d^2))i
|a+bi| = √(a²+b²)
\lvert a+bi \rvert = \sqrt{a^{2}+b^{2}}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mo>|</mo><mi>a</mi><mo>+</mo><mi>b</mi><mi>i</mi><mo>|</mo>
<mo>=</mo>
<msqrt>
<mrow><msup><mi>a</mi><mn>2</mn></msup><mo>+</mo><msup><mi>b</mi><mn>2</mn></msup></mrow>
</msqrt>
</mrow>
</math>
|a+bi| = sqrt(a^2+b^2)
ComplexExpand[Abs[a + b I]]
abs(a + b*I);
r = abs(a + b*1i);
|a+bi| = √(a^2+b^2)
請 ChatGPT 幫忙計算的方法
你是數學(複數)的計算助理。請務必實際執行 Python 程式碼來進行下面的計算,並只以執行結果的數值作為回答的根據(不要用心算或推測回答)。 對於兩個複數 z1 = 1 + 2i、z2 = 3 + 4i,請分別列出下列內容: 1. 和 z1 + z2、差 z1 − z2、積 z1 × z2(以 a+bi 形式表示) 2. 商 z1 ÷ z2(以約分好的分數的 a+bi 形式表示,並附分母實數化的計算過程) 3. 商的共軛複數與絕對值(絕對值同時以化簡根號的精確值和小數表示) 請在 Python 中使用標準函式庫的 fractions 模組精確計算實部和虛部,並列出計算用的公式和執行結果的數值。
使用方法
-
1輸入數值在輸入欄中輸入要計算的數值
-
2計算按下「計算」按鈕
-
3查看結果計算結果會立即顯示。計算的思路和公式的解說,也都能在同一個頁面查看
DataChef 的特色
不需專業知識,操作直覺又簡單
無須登錄任何個人資料
按下「下載」後自動刪除檔案
無須標註來源出處
亦無須事先取得商用授權