Курсовая работа: Калькулятор для матриць

Нормою квадратної матриці А, називається число, яке є сумою модулів елементів матриці А, тобто .

Слідом квадратної матриці будемо називати число, яке є сумою елементів цієї матриці, розташованих на головній діагоналі () .

Числом обумовленості квадратної матриці А називається величина

Постановка задачі

Ціль роботи – продемонструвати можливості використання калькулятора для матриць.

Мета роботи – створення програми за допомогою якої можна розв’язувати деякі задачі лінійної алгебри.

Опис алгоритму

Алгоритм створення програми полягає у наступному :

Спочатку створюємо вікно форми, потім додаємо текстові вікна у які з клавіатури вводимо дані. Далі додаємо кнопки , кожна з яких відповідає за одну дію чи операцію над матрицями. Також додатково створюємо контекстне меню, пункти якого виконують ті ж функції, що і кнопки на формі. Результат виводиться у відповідне текстове вікно.

Опис програми

Точка входу в саму програму знаходиться таким чином: відкриваємо папку MATRIXcalculator , запускаємо файл nn . sln , у вікні зліва обираємо папкуHeader Files і файл Form 1. h , з’являється вікно форми, де з клавіатури вводять розмірність матриці, елементи матриць, над якими необхідно виконати відповідні дії, далі можемо або натиснути кнопку безпосередньо у вікні форми або в меню Operations обрати відповідний пункт меню, чи за допомогою комбінації так званих „гарячих клавіш”. Кінцевий результат виводиться у текстовому вікні.

Запуск програми на виконання здійснюємо за допомогою комбінації клавішCtrl + F 5.

Програма використовує ряд функцій :

void GET_ARRAY(String *text,double **X,int n)

за допомогою даної функції отримуємо масиви – поки симол не є розширеним символьним типом і не є переходом на нову строку, нарощуємо лічильник; далі виділяємо у строці підстроку і перетворюємо її на дійсне число подвійної точності (тип double).

double DET(double **X,int n)

- ця функція обчислює визначник матриці.

Функція double DET(double **X,int n)

повертає алгебраїчні доповнення елементів масива.

void TRANSP_ARRAY(double **X,int n)

- транспонує елементи двомірного масива:

перший елемент залишає на своєму місці, а далі іде по рядках, переставляючи елементи рядків і стовпців місцями.

double TRACE(double **X,int n)

- повертає значення сліду матриці.

Функція працює таким чином:

Крокуючи елементами матриці, перевіряє: якщо індекс рядка та стовпця співпадають (це елементи головної діагоналі), присвоюємо значення першого елемента головної діагоналі деякій змінній, на наступному кроці, якщо елемент задовольняє вище названій умові, додаємо до сталої наступний елемент головної діагоналі і так далі (поки індекс не буде дорівнювати порядку матриці) .

Функція String * CNV _ ARRAY ( double ** X , int n ) необхідна для того, щоб після виконання дій (операцій) над матрицями отриманий результат перетворити на строку. Повертає строку .

C ловник понять використаних в програмі:

Button – кнопка .

Label – надпис .

TextBox– текстове вікно .

Length – розмір, довжина масиву .

К-во Просмотров: 790
Бесплатно скачать Курсовая работа: Калькулятор для матриць