Ruby:
Робота з комплексними числами
Як це зробити:
Ruby робить роботу з комплексними числами дуже простою. Ви можете створювати та маніпулювати ними, використовуючи клас Complex:
require 'complex'
# Створення комплексних чисел
c1 = Complex(3, 4)
c2 = Complex('2+5i')
# Основні операції
sum = c1 + c2 # => (5.0+9.0i)
difference = c1 - c2 # => (1.0-1.0i)
product = c1 * c2 # => (-14.0+23.0i)
quotient = c1 / c2 # => (0.896551724137931+0.03448275862068961i)
# Спряжене, модуль та фаза
conjugate = c1.conjugate # => (3.0-4.0i)
magnitude = c1.abs # => 5.0
phase = c1.phase # Math.atan2(4, 3) => 0.9272952180016122 радіани
# Методи, специфічні для комплексних чисел
polar = c1.polar # => [5.0, 0.9272952180016122]
rectangular = c1.rect # => [3.0, 4.0]
Поглиблене вивчення
Комплексні числа не є новинкою — вони існують з 16 століття, дозволяючи розв’язувати рівняння без дійсних розв’язків. Окрім математики, обчислювально клас Complex в Ruby робить основну роботу, будучи підтриманим модулем Math для тригонометричних та трансцендентних функцій.
Раніше мови програмування потребували ручного управління дійсними та уявними частинами. Деякі, як Fortran та C++, мають спеціалізовані бібліотеки для комплексної арифметики.
Підхід Ruby вбудовує підтримку комплексних чисел у свій синтаксис, звільняючи вас від необхідності винаходити колесо заново. За лаштунками, клас Complex займається математикою, тоді як Ruby відповідає за взаємодії об’єктів.
Дивись також
- Документація Ruby про Complex: https://ruby-doc.org/core/Complex.html
- Погляд MathWorld на комплексні числа: http://mathworld.wolfram.com/ComplexNumber.html
- Візуальне введення в комплексні числа та чому вони корисні: https://www.youtube.com/watch?v=5PcpBw5Hbwo