МІНІСТЕРСТВО ОСВІТИ І НАУКИ, МОЛОДІ ТА СПОРТУ УКРАЇНИ
ТЕХНІЧНИЙ КОЛЕДЖ НАЦІОНАЛЬНОГО УНІВЕРСИТЕТУ «ЛЬВІВСЬКА ПОЛІТЕХНІКА»
ВІДДІЛЕННЯ ІНФОРМАЦІЙНИХ ТЕХНОЛОГІЙТА КОМП'ЮТЕРНОЇ ТЕХНІКИ
Лабораторна робота №4
з дисципліни
алгоритмів і структури даних
Тема: форми та засоби представлення алгоритмів.
Мета: навчитися формам та засобам представлення алгоритмів на прикладі здійснення операцій над комплексними числами.
Теоретична частина.
Ко́мпле́ксні чи́сла, — розширення множини дійсних чисел, зазвичай позначається /. Будь-яке комплексне число може бути представлене, як формальна сума x + iy, де x і y — дійсні числа, i — уявна одиниця.
Комплексні числа утворюють алгебраїчно замкнуте поле — це означає, що многочлен ступеня n із комплексними коефіцієнтами має рівно n комплексних коренів (основна теорема алгебри). Це одна з головних причин широкого застосування комплексних чисел у математичних дослідженнях. Крім того, застосування комплексних чисел дозволяє зручно і компактно сформулювати багато математичних моделей, що застосовуються в математичній фізиці і в природничих науках —електротехніці, гідродинаміці, картографії, квантовій механіці, теорії коливань і багатьох інших.
Арифметичні дії виконуються аналогічно до дій з многочленами, але з урахуванням рівності /. Нехай / та / — комплексні числа. Тоді:
/
/
/
/
Уявна одиниця / — число, що при піднесенні до квадрату дає від'ємну одиницю: /
Уявна одиниця не належить полю дійсних чисел, однак дає можливість розширити його до поля комплексних чисел.
Наведене вище рівняння має два розв'язки. Якщо один з них є /, то іншим розв'язком буде /, бо справджується наступна рівність:
/
Таким чином, виникає неоднозначність означення комплексного числа. Проте, хоча ці два числа не рівні між собою, для математики не існує різниці у тому, яке саме з двох розв'язків рівняння / позначатиметься /, а яке /.
Постановка задачі.
Маємо два значення z1 i z2. З них z1 пердставлене у вигляді z1=a+bi, а z2=c+di. Де а – номер варіанта студента, b – номер варіанта + день народження, с – довільне число, яке собі видрав студент, d – це число дорівнює половоні числа с.
Блок-схема.
Програмний код:
#include "stdafx.h"
#include <conio.h>
#include <iostream>
using namespace std;
class komp_chusl
{ public:
int x,y;
komp_chusl operator +(komp_chusl pt_z)
{ komp_chusl t;
t.x=this->x+pt_z.x;
t.y=this->y+pt_z.y;
return t; }
komp_chusl operator *(komp_chusl pt_z)
{ komp_chusl t;
t.x=this->x*pt_z.x-this->y*pt_z.y;
t.y=this->x*pt_z.y+this->y*pt_z.x;
return t; } };
int main()
{ komp_chusl z1,z2;
z1.x=29;
z1.y=37;
z2.x=8;
z2.y=4;
komp_chusl z3=z1+z2;
cout<<"Rezyltat vukonnana dvox komplekcnux chusel "<<endl;
cout<<"z1+z2="<<z3.x;
if (z3.y>=0) cout<<" + ";
cout<<z3.y<<"i\n"<<endl;
komp_chusl z4=z1*z2;
cout<<"Rezyltat vukonnana dvox komplekcnux chusel"<<endl;
cout<<"z1*z2="<<z4.x;
if (z4.y>=0) cout<<" + ";
cout<<z4.y<<"i";
getch();
return 0; }
Результат виконання програми:
/
Виновок: в цій лабораторній роботі навчився формам та засобам представлення алгоритмів на прикладі здійснення операцій над комплексними числами (результат програми перевірено на сайті http://formula.co.ua/complex.php).