Last updated:
0 purchases
i
Complex Number Class in Dart #
Overview #
The Complex class in Dart provides a way to represent and perform basic arithmetic operations with complex numbers. A complex number is expressed as a + bi, where a is the real part and b is the imaginary part. This class supports addition, subtraction, multiplication, division, and comparison of complex numbers, along with a method to compute the magnitude.
Features #
Addition, subtraction, multiplication, and division of complex numbers.
Comparison of complex numbers based on their magnitude.
Factory constructors for creating complex numbers with only real or imaginary parts.
Easy-to-use extension methods for creating complex numbers from numerical values.
Installation #
To use the Complex class in your Dart project, include it in your pubspec.yaml file:
dependencies:
i: ^1.0.1
copied to clipboard
Then run dart pub get to install the dependency.
Usage #
Here's how to use the Complex class in your Dart project:
import 'package:i/i.dart';
void main() {
// Creating complex numbers
Complex num1 = Complex(2, 3);
Complex num2 = Complex.fromReal(4);
Complex num3 = Complex.fromImaginary(5);
print('num1: $num1'); // Output: 2.00 + 3.00i
print('num2: $num2'); // Output: 4.00 + 0.00i
print('num3: $num3'); // Output: 0.00 + 5.00i
// Performing arithmetic operations
Complex sum = num1 + num2;
Complex difference = num1 - num2;
Complex product = num1 * num2;
Complex quotient = num1 / num2;
print('Addition: $sum'); // Output: 6.00 + 3.00i
print('Subtraction: $difference'); // Output: -2.00 + 3.00i
print('Multiplication: $product'); // Output: -10.00 + 15.00i
print('Division: $quotient'); // Output: 0.56 + 0.08i
// Comparison
Complex num4 = Complex(3, 4);
print('Comparison result: ${num1.compareTo(num4)}'); // Output: -1, 0, or 1 based on magnitude
}
copied to clipboard
Methods #
Complex(double real, double imaginary) #
Creates a new complex number with the given real and imaginary parts.
factory Complex.fromReal(double real) #
Creates a new complex number with the given real part and zero as the imaginary part.
factory Complex.fromImaginary(double imaginary) #
Creates a new complex number with the given imaginary part and zero as the real part.
Complex operator +(Complex other) #
Adds this complex number to another complex number.
Complex operator -(Complex other) #
Subtracts another complex number from this complex number.
Complex operator *(Complex other) #
Multiplies this complex number by another complex number.
Complex operator /(Complex other) #
Divides this complex number by another complex number.
double get magnitude #
Returns the magnitude of this complex number, calculated as the square root of the sum of the squares of the real and imaginary parts.
int compareTo(Complex other) #
Compares this complex number to another complex number based on their magnitudes.
Extensions #
ComplexNumber #
Provides convenient extension methods to create complex numbers:
Complex get i - Creates a complex number with zero real part and the given numerical value as the imaginary part.
Complex get r - Creates a complex number with the given numerical value as the real part and zero imaginary part.
License #
This project is licensed under the MIT License. See the LICENSE file for details.
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.