2.2 Действия с комплексными числами

Рассмотрим решение квадратного уравнения х2 +1 = 0. Отсюда х= -1. Число х, квадрат которого равен –1, называется мнимой единицей и обозначается i. Таким образом , i2 = -1, откуда . Решение квадратного уравнения, например, х2 – 8х + 25 = 0, можно записать следующим образом:


.

Числа вида 4+3i и 4-3i называют комплексными числами. В общем виде комплексное число записывается а + bi, где a и b- действительные  числа, а i – мнимая единица. Число а называется действительной частью комплексного числа, bi-мнимой частью этого числа, b- коэффициентом мнимой части комплексного числа.

2.2.1 Сложение комплексных чисел

Суммой двух комплексных чисел z1 = a + bi и z2 = c + di называется комплексное число z = (a+c) + (b+d)i.  Числа a + bi и a-bi называются сопряженными. Их сумма равна действительному числу 2а,

(а+bi) + (а-bi) = 2а.

Числа а+bi и -a-bi называются противоположными. Их сумма равна нулю. Комплексные числа равны, если равны их действительные части и коэффициенты мнимых частей: а+bi = c+di, если a = c, b = d.  Комплексное число равно нулю тогда, когда его действительная часть и коэффициент мнимой части равны нулю, т.е. z=a + bi = 0, если a=0, b=0.  Действительные числа являются частным случаем комплексных чисел. Если b=0, то a+bi=a - действительное число. Если а = 0, , то a + bi = bi – чисто мнимое число. Для комплексных чисел справедливы переместительный и сочетательный законы сложения. Их справедливость следует из того, что сложение комплексных чисел по существу сводится к сложению действительных частей и коэффициентов мнимых частей, а они являются действительными числами, для которых справедливы указанные законы.


2.2.2 Вычитание комплексных чисел

Вычитание комплексных чисел определяется как действие, обратное сложению: разностью двух комплексных чисел a + bi  и  с + di называется комплексное число х + уi, которое в сумме с вычитаемым дает уменьшаемое. Отсюда, исходя из определения сложения и равенства комплексных чисел получим два уравнения, из которых найдем, что х = а-с, у = b-d. Значит,

(а+bi) - (c+di) = (a-c) + (b-d)i.

2.2.3 Произведение комплексных чисел

Произведение комплексных чисел z1=a+bi и z2=c+di называется комплексное число

z =(ac-bd) + (ad + bc)i, z1z2 = (a + bi)(c + di) = (ac - bd) + (ad + bc)i.

Легко проверить, что умножение комплексных чисел можно выполнять как умножение многочленов с заменой i2 на –1. Для умножения комплексных чисел также справедливы переместительный и сочетательный законы, а также распределительный закон умножения по отношению к сложению.

Из определения умножения получим, что произведение сопряженных комплексных чисел равно действительному числу:

(a + bi)(a - bi) = a2 + b2

2.2.4 Деление комплексных чисел

Деление комплексных чисел, кроме деления на нуль, определяется как действие, обратное умножению. Конкретное правило деления получим, записав частное в виде дроби и умножив числитель и знаменатель этой дроби на число, сопряженное со знаменателем:


.


3. Функциональные модели и блок-схемы решения задачи

 

Функциональные модели и блок-схемы решения задачи представлены на рисунках 1 – 4.

Используемые обозначения:

-    N1 – первое комплексное число;

-    N2 – второе комплексное число;

-    A – действительная часть первого комплексного числа;

-    C – мнимая часть первого комплексного числа;

-    B – действительная часть второго комплексного числа;

-    D – мнимая часть второго комплексного числа.

Рисунок 1 – Функциональная модель решения задачи для функции SUM_COMPLEX

Рисунок 2 – Функциональная модель решения задачи для функции SUBTR_COMPLEX


Рисунок 3 – Функциональная модель решения задачи для функции MULT_COMPLEX

Рисунок 4 – Функциональная модель решения задачи для функции DIV_COMPLEX

 


 

4. Программная реализация решения задачи

ЗАВОДИМ ПЕРЕМЕННЫЕ ДЛЯ КОМПЛЕКСНЫХ ЧИСЕЛ

(SETQ NUM1 0)

(SETQ NUM2 0)

(SETQ INPUT_STREAM (OPEN " D:\\COMLEX_NUMBERS.TXT" :DIRECTION :INPUT));ЧИСЛА ХРАНЯТЬСЯ В ФАЙЛЕ В ВИДЕ СПИСКА (A B); ГДЕ A - ДЕЙСВИТЕЛЬНАЯ ЧАСТЬ, B - МНИМАЯ; СЧИТЫВАЕМ ЧИСЛА ИЗ ФАЙЛА

(SETQ NUM1 (READ INPUT_STREAM))

(SETQ NUM2 (READ INPUT_STREAM))

(CLOSE INPUT_STREAM)

СУММА КОМПЛЕКСНЫХ ЧИСЕЛ

(DEFUN SUM_COMPLEX (N1 N2)

(LIST (+ (CAR N1) (CAR N2)) (+ (CADR N1) (CADR N2))))

РАЗНОСТЬ КОМПЛЕКСНЫХ ЧИСЕЛ

(DEFUN SUBTR_COMPLEX (N1 N2)

(LIST (- (CAR N1) (CAR N2)) (- (CADR N1) (CADR N2))))

ПРОИЗВЕДЕНИЕ КОМПЛЕКСНЫХ ЧИСЕЛ

(DEFUN MULT_COMPLEX (N1 N2)

ОБЪЯВЛЕНИЕ ВСПОМОГАТЕЛЬНЫХ ПЕРЕМЕННЫХ

(DECLARE (SPECIAL A))

(DECLARE (SPECIAL B))

(DECLARE (SPECIAL C))

(DECLARE (SPECIAL D))

(SETQ A (CAR N1))

(SETQ B (CADR N1))

(SETQ C (CAR N2))

(SETQ D (CADR N2))

(LIST (- (* A C) (* B D)) (+ (* A D)(* B C))))

ДЕЛЕНИЕ КОМПЛЕКСНЫХ ЧИСЕЛ

(DEFUN DIV_COMPLEX (N1 N2)

ОБЪЯВЛЕНИЕ ВСПОМОГАТЕЛЬНЫХ ПЕРЕМЕННЫХ

(DECLARE (SPECIAL A))

(DECLARE (SPECIAL B))

(DECLARE (SPECIAL C))

(DECLARE (SPECIAL D))

(SETQ A (CAR N1))

(SETQ B (CADR N1))

(SETQ C (CAR N2))

(SETQ D (CADR N2))

(LIST (FLOAT (/ (+ (* A C) (* B D)) (+ (* C C) (* D D)))) (FLOAT (/ (- (* B C) (* A D)) (+ (* C C) (* D D))))))

ЗАПИСЫВАЕМ РЕЗУЛЬТАТ

(SETQ OUTPUT_STREAM (OPEN " D:\\RESULT.TXT" :DIRECTION :OUTPUT)) (DEFUN PRINT_OPERATIONS (N1 N2)

(MAPCAR 'SUM_COMPLEX N1 N2))

(PRINT (LIST 'NUMBER1 NUM1) OUTPUT_STREAM)

(PRINT (LIST 'NUMBER2 NUM2) OUTPUT_STREAM)

(PRINT OUTPUT_STREAM)

(PRINT (LIST 'SUM (MAPCAR 'SUM_COMPLEX NUM1 NUM2)) OUTPUT_STREAM)

(PRINT (LIST 'SUBTRACTION (MAPCAR 'SUBTR_COMPLEX NUM1 NUM2)) OUTPUT_STREAM)

(PRINT (LIST 'MULTIPLICATION (MAPCAR 'MULT_COMPLEX NUM1 NUM2)) OUTPUT_STREAM)

(PRINT (LIST 'DIVISION (MAPCAR 'DIV_COMPLEX NUM1 NUM2)) OUTPUT_STREAM)

(TERPRI OUTPUT_STREAM)

(CLOSE OUTPUT_STREAM)


5. Пример выполнения программы

Пример 1.

Рисунок 5 – Входные данные

Рисунок 6 – Выходные данные

Пример 2.

Рисунок 7 – Входные данные

Рисунок 8 – Выходные данные


Пример 3.

Рисунок 9 – Входные данные

Рисунок 10 – Выходные данные


 

Заключение

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

Итогом работы можно считать созданную функциональную модель для реализации математических операций над комплексными числами. Созданная функциональная модель и ее программная реализация могут служить органической частью решения более сложных задач.

 


 

Список использованных источников и литературы

1.         Выгодский, М.Я. Справочник по элементарной математике. [Текст] / М.Я. Выгодский – М.: АСТ: Астрель, 2006. С. 509.

2.         Дадаян, А.А. Алгебра и геометрия. [Текст] / А.А Дадаян, В.А.Дударенко. – М.: Минск, 1999. С. 342.

3.         Камалян, Р.З. Высшая математика. [Текст] / Р.З.Камалян. – М.: ИМСИТ, 2004. С.310.

4.         Комплексное число [Электронный ресурс] – Режим доступа: http://ru.wikipedia.org/wiki/Комплексное_число.

5.         Степанов, П.А. Функциональное программирование на языке Lisp. [Электронный ресурс] / П.А.Степанов, А.В.Бржезовский. – М.: ГУАП, 2003. С. 79.


Информация о работе «Лисп-реализация математических операций над комплексными числами»
Раздел: Информатика, программирование
Количество знаков с пробелами: 13809
Количество таблиц: 0
Количество изображений: 9

Похожие работы

Скачать
169417
2
16

... ряде прикладных программ. Сферы применения Лиспа многообразны: наука и промышленность, образование и медицина, от декодирования генома человека до системы проектирования авиалайнеров. 3. Технологическая реализация системы подготовки обработки детали станка с ЧПУ 3.1 Описание кодов программного модуля Любой проект в Delphi состоит из нескольких частей (набора файлов, каждый из которых ...

Скачать
170298
0
0

... 2.2 Понятия языка Лисп ________________________________ 2.2.1 Атомы и списки _____________________________ 2.2.2 Внутреннее представление списка _____________ 2.2.3 Написание программы на Лиспе _______________ 2.2.4 Определение функций _______________________ 2.2.5 Рекурсия и итерация _________________________ 2.2.6 Функции интерпретации выражений ____________ 2.2.7 Макросредства ...

Скачать
161967
0
2

... систем электронной торговли; 5. Устранение промежуточных звеньев в системе интеграции организация - внешняя среда. 31. основные разделы искусственного интеллекта Одно из направлений информатики - интеллектуализация информационных систем. Интеллектуальные системы и технологии применяются для тиражирования профессионального опыта и решения сложных научных, производственных и экономических ...

Скачать
90598
2
0

... , которая состоялась 22 февраля 1995 года, обсуждался ход реализации программы информатизации образования на 1994-1995 гг. Был рассмотрен вопрос о совершенствовании организации обучения информатике в общеобразовательной школе на современном этапе. Коллегия постановила признать целесообразной необходимость выделения нескольких этапов в овладении основами информатики и формировании информационной ...

0 комментариев


Наверх