Complex Number Calculator
Enter the real and imaginary parts of two complex numbers to get the result, modulus, argument, conjugate, reciprocal and polar form; parts are computed as exact fractions.
Complex numbers are what let you take the square root of a negative number, and AC circuit analysis, signal processing and quantum mechanics all lean on them. Doing the arithmetic by hand is where people trip, though — the denominator in division and the quadrant of the argument. Enter the real and imaginary parts of two complex numbers and you get the result along with modulus, argument, conjugate and polar form, in both exact fractions and decimals.
A few conventions up front: the argument uses the principal value in (−π, π], so a third-quadrant angle is negative rather than "missing a π"; division rationalises the denominator; modulus and argument come from atan2, so the quadrant is never lost. Real and imaginary parts are given as exact fractions and irrational values keep their radical form, avoiding accumulated decimal error. Powers of i cycle every four (i⁴ = 1).
Did this tool solve your problem?
Submitting sends the tool name, your input and the current result to the server. Please do not include ID numbers, phone numbers or other private data.
AI assistant It answers using your current input and result
Asking again sends your current input and result to the server once more. Please do not include private data.
How to use
- Enter the real and imaginary parts of two complex numbers and pick an operation (add, subtract, multiply, divide).
- Read the result: algebraic form, modulus, argument, conjugate and reciprocal.
- Check the polar form r∠θ, where the argument is the principal value in (−π, π].
- Copy the result — use the fraction form for exact checking and the decimal form for engineering estimates.
How it works
How the four operations work
Addition and subtraction work component-wise; multiplication and division follow formulas. To add, combine real parts and imaginary parts separately: (3+4i) + (1−2i) = 4 + 2i. To multiply, expand (a+bi)(c+di) = (ac−bd) + (ad+bc)i, where the bd term flips sign because i² = −1: (3+4i)(2−i) = 6 − 3i + 8i − 4i² = 10 + 5i. To divide, multiply top and bottom by the conjugate of the denominator so the denominator becomes the real number c²+d²: (1+i) ÷ (1−i) = (1+i)(1+i) ÷ 2 = i.
Modulus and argument: the two geometric quantities
The modulus |z| = √(a²+b²) is the distance from the point to the origin — |3+4i| = 5 — and the argument arg(z) is the angle measured counter-clockwise from the positive real axis: about 53.13° for 3+4i, 90° for i, 180° for −1, and −45° for 1−i. Written in polar form z = |z| ∠ θ, multiplication becomes multiply the moduli and add the angles, while division becomes divide the moduli and subtract the angles — which is why AC circuits and signal processing almost always use this form.
Why the result is written as fractions
This tool treats real and imaginary parts as fractions and does the arithmetic in BigInt throughout, so (1/2 + 1/3 i) + (1/6 + 1/6 i) comes out exactly 2/3 + 1/2 i rather than an approximation like 0.6666…. Fractional coefficients are written as "1/2 i" with a space so they cannot be misread as 1 ÷ (2i). For decimal values, see the "real part (decimal)" and "imaginary part (decimal)" rows.
Calculation basis: complex arithmetic follows (a+bᵢ)(c+dᵢ) = (ac−bd) + (ad+bc)ᵢ, and division multiplies numerator and denominator by the conjugate. Modulus |z| = √(a²+b²) and the argument uses the principal value of atan2(b, a) in (−180°, 180°]. Real and imaginary parts are computed exactly as BigInt rationals (results are kept as fractions); the decimal form is display only.
Code example
JavaScript Complex arithmetic and polar form
class Cx {
constructor(re, im) { this.re = re; this.im = im; }
add(o) { return new Cx(this.re + o.re, this.im + o.im); }
mul(o) { return new Cx(this.re * o.re - this.im * o.im,
this.re * o.im + this.im * o.re); }
abs() { return Math.hypot(this.re, this.im); }
arg() { return Math.atan2(this.im, this.re); } // principal value (-π, π]
}
new Cx(3, 4).abs(); // 5
Python The built-in complex type
z = complex(3, 4)
abs(z) # 5.0 (modulus)
z.real, z.imag # (3.0, 4.0)
z.conjugate() # (3-4j)
import cmath
cmath.phase(z) # 0.9273 (principal argument)
cmath.polar(z) # (5.0, 0.9273) (polar form)
FAQ
How do you divide complex numbers?
Multiply top and bottom by the conjugate of the denominator. For (3+4i) ÷ (1−2i): the conjugate is 1+2i, so the denominator becomes 1²+2² = 5, while the numerator is (3+4i)(1+2i) = 3+6i+4i+8i² = −5+10i. The result is therefore −1 + 2i.
Why does i squared equal −1?
That is the definition of the imaginary unit: i is a square root of −1, and it lets you solve equations such as x² = −1. From it, powers of i cycle every four: i¹ = i, i² = −1, i³ = −i, i⁴ = 1. For any higher power, take the exponent modulo 4 and look it up — the table on this page lists them.
What is the difference between the modulus of a complex number and absolute value?
For real numbers the two agree; for complex numbers only the modulus makes sense. The modulus |a+bi| = √(a²+b²) is the distance from the point to the origin in the complex plane, and it is always a non-negative real number: |3+4i| = 5 and |10+5i| = √125 ≈ 11.1803.
Why can the argument be negative?
The argument is measured counter-clockwise from the positive real axis, so counter-clockwise is positive and clockwise is negative. 1−i has argument −45° (often written 315°), and −3−4i has −126.87° (or 233.13°). This tool always reports the principal value in (−180°, 180°] to avoid multi-valued confusion.
What does the "1/2 + 1/2 i" notation mean?
That is the fraction form of the real and imaginary parts: real part 1/2, imaginary part 1/2, i.e. 0.5 + 0.5i. Fractions are kept because they are exact — 1/3 as a decimal can only be approximated. For decimal values, see the "real part (decimal)" and "imaginary part (decimal)" rows in the statistics panel.
How do you find the reciprocal of a complex number?
1/z = conjugate(z) ÷ |z|². For 3+4i: the squared modulus is 25 and the conjugate is 3−4i, so the reciprocal is 3/25 − 4/25 i. Note that 0 + 0i has no reciprocal — this tool shows a message instead of returning a wrong result.
What is the polar form good for?
Writing a complex number as z = |z| ∠ θ turns multiplication into multiply the moduli and add the angles, and division into divide the moduli and subtract the angles, which is far more intuitive than rectangular form. Impedance calculations in AC circuits and phase analysis in signal processing both rely on this, so the modulus and argument are shown right in the result.
How do I get just the modulus and argument of one complex number?
Enter 1 + 0i as the second number and choose addition — the result is then the first number itself, and the modulus, argument, conjugate and reciprocal in the statistics panel are its geometric properties. That is the quickest way to inspect a single number.