Работа с комплексными числами

JavaScript:
Работа с комплексными числами

Как:

В JavaScript нет встроенной поддержки комплексных чисел, но вы можете смело закатать рукава и управлять ими с помощью объектов и математики. Вот краткий обзор.

class ComplexNumber {
  constructor(real, imaginary) {
    this.real = real;
    this.imaginary = imaginary;
  }

  add(other) {
    return new ComplexNumber(this.real + other.real, this.imaginary + other.imaginary);
  }

  // ...добавьте больше методов (вычитание, умножение, деление) по мере необходимости

  toString() {
    return `${this.real} + ${this.imaginary}i`;
  }
}

const a = new ComplexNumber(1, 2);
const b = new ComplexNumber(3, 4);
const result = a.add(b);

console.log(`Результат: ${result}`); // Результат: 4 + 6i

Глубокое погружение

Комплексные числа существуют с 16 века, благодаря итальянскому математику Джероламо Кардано. Они стали критически важны в различных областях, как инженерия и физика. В современном программировании они ключевые для симуляций и алгоритмов, требующих многомерности.

Теперь, JavaScript изначально не предназначен для работы с комплексными числами. Но, помимо DIY-варианта, можно использовать математические библиотеки, такие как math.js или numeric.js. Они обладают мощностями для более серьезной работы с комплексными числами, добавляя такие преимущества, как больше операций, вычисление величины и нахождение аргумента.

Под капотом, когда вы работаете с комплексными числами, это как управление двумя отдельными числами, связанными на бедрах. Сложение и вычитание — это легкие действия — соответствуете действительное с действительным, мнимое с мнимым. Умножение и деление становятся пикантнее с перекрестными терминами и требуют большей осторожности.

Смотрите также