Arduino:
Робота з комплексними числами
Як це зробити:
#include <Complex.h>
void setup() {
Serial.begin(9600); // Початок серійного зв'язку
Complex myComplex(2, 3); // Створення комплексного числа 2 + 3i
Complex anotherComplex(1, 1); // Створення іншого комплексного числа 1 + 1i
// Додавання
Complex result = myComplex + anotherComplex;
Serial.print("Додавання: ");
result.print(); // Виведення 3 + 4i
// Множення
result = myComplex * anotherComplex;
Serial.print("Множення: ");
result.print(); // Виведення -1 + 5i
}
void loop() {
// У цьому прикладі не використовується
}
Приклад виведення:
Додавання: 3 + 4i
Множення: -1 + 5i
Поглиблене вивчення
Спочатку до комплексних чисел ставилися зі скепсисом, але вони стали центральними у різних наукових сферах. Історично, їх визнали за те, що вони надають рішення для поліноміальних рівнянь, які не мають дійсних рішень.
Arduino не включає комплексні числа у свою стандартну бібліотеку, але ви можете використовувати бібліотеки типу Complex.h
для роботи з ними. Внутрішньо ці бібліотеки визначають клас Complex, який зазвичай використовує два числа типу double для зберігання дійсної та уявної частини, і перевантаження операторів для підтримки арифметики.
Як альтернатива, для додатків, які принципово не потребують арифметики комплексних чисел, розгляньте використання інших математичних стратегій або бібліотек. Однак пам’ятайте, що використання чисел з плаваючою точкою замість комплексних чисел може спростити деякі проблеми.
Дивіться також
- Бібліотека Complex.h від Роба Тілларта.
- Поглиблене вивчення математики комплексних чисел.