Как руководить без конфликта
Содержание
Введение
1. Постановка задачи
2. Математические и алгоритмические основы решения
задачи
2.1 Понятие о комплексных числах
2.2 Действия с комплексными числами
2.2.1 Сложение комплексных чисел
2.2.2 Вычитание комплексных чисел
2.2.3 Произведение комплексных чисел
2.2.4 Деление комплексных чисел
3. Функциональные модели и блок-схемы
решения задачи
4 Программная реализация решения задачи
5. Пример выполнения программы
Заключение
Список использованных источников и литературы
Введение
Решение многих задач
физики и техники приводит к квадратным уравнениям с отрицательным
дискриминантом. Эти уравнения не имеют решения в области действительных чисел.
Но решение многих таких задач имеет вполне определенный физический смысл.
Значение величин, получающихся в результате решения указанных уравнений,
назвали комплексными числами.
Комплексные числа широко
использовал отец русской авиации Н.Е.Жуковский (1847 – 1921) при разработке
теории крыла, автором которой он является.
Комплексные числа и
функции от комплексного переменного находят применение во многих вопросах науки
и техники.
Цель настоящей курсовой
работы: Лисп-реализация математических операций над комплексными числами.
1.
Постановка задачи
Требуется разработать
программу, реализующую математические операции над комплексными числами,
опираясь на следующие правила выполнения операций:
1). Сложение:
.
2). Вычитание:
.
3). Умножение:
.
4). Деление:
.
Пример 1.
Выполнить сложение двух
комплексных чисел: и .
Решение:
.
Ответ: .
Пример 2.
Выполнить вычитания двух
комплексных чисел: и .
Решение:
.
Ответ: .
Пример 3.
Выполнить умножение двух
комплексных чисел: и .
Решение:
.
Ответ: .
Пример 4.
Выполнить деление двух
комплексных чисел: и .
Решение:
.
Ответ: i.
2.
Математические и алгоритмические основы решения задачи
2.1
Понятие о комплексных числах
Для решения
алгебраических уравнений недостаточно действительных чисел. Поэтому естественно
стремление сделать эти уравнения разрешимыми, что в свою очередь приводит к
расширению понятия числа. Например, для того чтобы любое уравнение x+a=b имело корни,
положительных чисел недостаточно и поэтому возникает потребность ввести
отрицательные числа и нуль.
Древнегреческие
математики считали, что a=c и b=а только натуральные числа, но в практических расчетах за
два тысячелетия до нашей эры в Древнем Египте и Древнем Вавилоне уже
применялись дроби. Следующим важным этапом в развитии понятия о числе было
введение отрицательных чисел – это было сделано китайскими математиками за 2
века до нашей эры. Отрицательные числа применял в 3 веке нашей эры древнегреческий
математик Диофант, знавший уже правила действий над ними, а в 7 веке нашей эры
эти числа подробно изучили индийские ученые, которые сравнивали такие числа с
долгом. С помощью отрицательных чисел можно было единым образом описывать
изменение величин. Уже в 8 веке нашей эры было установлено, что квадратный
корень из положительного числа имеет два значение - положительное и
отрицательное, а из отрицательных чисел квадратные корни извлечь нельзя: нет
такого числа х, чтобы х2 = -9. В 16 веке в связи с изучением
кубических уравнений оказалось необходимым извлекать квадратные корни из
отрицательных чисел. В формуле для решения кубических уравнений содержатся
кубические и квадратные корни. Эта формула безотказно действует в случае, когда
уравнение имеет один действительный корень (например, для уравнения х3+3х-4=0),
а если оно имело 3 действительных корня (например, х3-7х+6=0), то
под знаком квадратного корня оказывалось отрицательное число. Получалось, что
путь к этим 3 корням уравнения ведет через невозможную операцию извлечения
квадратного корня из отрицательного числа.
Чтобы объяснить
получившийся парадокс, итальянский алгебраист Дж. Кардано в 1545
предложил ввести числа новой природы. Он показал, что система уравнений х+у=10,
ху=40 не имеющая решений в множестве действительных чисел, имеет решение всегда
, , нужно
только условиться действовать над такими выражениями по правилам обычной
алгебры и считать, что . Кардано называл
такие величины «чисто отрицательными» и даже
«софистически отрицательными», считая их бесполезными и стремился не применять
их. В самом деле, с помощью таких чисел нельзя выразить ни результат измерения
какой-нибудь величины, ни изменение этой величины. Но уже в 1572 г. вышла книга
итальянского алгебраиста Р. Бомбелли, в котором были установлены первые правила
арифметических операций над такими числами, вплоть до извлечения из них
кубических корней. Название «мнимые числа» ввел в 1637г. французский математик
и философ Р. Декарт, а в 1777г. один из крупнейших математиков VIII века Х. Эйлер предложил использовать
первую букву французского числа (мнимой единицы), этот символ вошел во всеобщее
употребление благодаря К. Гауссу (1831г).
В течение 17 века
продолжалось обсуждение арифметической природы мнимостей, возможности дать им
геометрическое истолкование. Постепенно развивалась техника операций над
комплексными числами. На рубеже 17-18 веков была построена общая теория корней n-й степени сначала из отрицательных,
а впоследствии и из любых комплексных чисел.
В конце 18 века
французский математик Ж. Лагранж смог сказать, что математический анализ уже не
затрудняют мнимые величины. С помощью комплексных чисел научились выражать
решения линейных дифференциальных уравнений с постоянным коэффициентом. Такие
уравнения встречаются, например, в теории колебаний материальной точки в
сопротивляющейся среде. Я. Бернулли применил комплексные числа для вычисления интегралов.
Хотя в течении 18 века с помощью комплексных чисел были решены многие вопросы,
в том числе и прикладные задачи, связанные с картографией, гидродинамикой и т.
д., однако еще не было строго логического обоснования теории этих чисел.
Поэтому французский ученый П. Лаплас считал, что результаты, получаемые с
помощью мнимых чисел, - только наведение, приобретающие характер настоящих
истин лишь после подтверждения прямыми доказательствами. В конце 18- начале 19
веков было получено геометрическое истолкование комплексных чисел. Датчанин
Г.Вессель, француз Ж. Арган и немец К. Гаусс независимо друг от друга
предложили изображать комплексное число точкой М(а,b) на координатной плоскости. Позднее оказалось, что еще удобнее
изображать число не самой точкой М, а вектором ОМ, идущим в эту точку из начала
координат. При таком истолковании сложению и вычитанию комплексных чисел
соответствуют эти же операции над векторами.
Геометрические
истолкования комплексных чисел позволили определить многие понятия, связанные с
функциями комплексного переменного, расширило область их применения. Стало
ясно, что комплексные числа полезны во многих вопросах, где имеют дело с
величинами, которые изображаются векторами на плоскости: при изучении течения
жидкости, задач теории упругости, в теоретической электротехнике.
2.2
Действия с комплексными числами
Рассмотрим решение
квадратного уравнения х2 +1 = 0. Отсюда х2 = -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.
Произведение комплексных
чисел 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 '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.