Complex data type

Last updated

Some programming languages provide a complex data type for complex number storage and arithmetic as a built-in (primitive) data type.

Contents

Complex-number arithmetic

A complex variable or value is usually represented as a pair of floating-point numbers. Languages that support a complex data type usually provide special syntax for building such values, and extend the basic arithmetic operations ('+', '−', '×', '÷') to act on them. These operations are usually translated by the compiler into a sequence of floating-point machine instructions or into library calls. Those languages may also provide support for other operations, such as formatting, equality testing, etc. As in mathematics, those languages often interpret a floating-point value as equivalent to a complex value with a zero imaginary part.

Language support

?(sqrt-1)#C(01); the result of (sqrt -1)

Integration in programming

Many programming languages provide built-in support or standard libraries for complex data types, enabling direct manipulation of complex numbers in code. These integrations typically define arithmetic operations, comparison rules, and input/output formatting specific to complex numbers. For example, in Python, the complex type allows arithmetic with complex literals and supports functions from the cmath module. [5] Similarly, Haskell includes the Data.Complex module, offering complex arithmetic with real and imaginary parts represented as floating-point numbers. [6] Such integration simplifies scientific and engineering computations that require complex number calculations.


References

  1. A guide to Fortran IV programming Daniel D. McCracken - 1972 - 288 pages. "The capability provided by Fortran complex operations is a great savings in programming effort in certain problems. "
  2. Python v2.6.5 documentation
  3. "Complex and Rational Numbers — Julia Language 0.3.13-pre documentation".
  4. "R Data Types". www.w3schools.com. Retrieved 2022-04-26.
  5. "Built-in Types: complex". Python documentation. Retrieved 2025-06-14.
  6. "Haskell 2010 Language Report: Data.Complex module". Haskell.org. Retrieved 2025-06-14.