#include <stdio.h>
#include <locale.h>
#include <math.h>
#include <windows.h>
#include <stdlib.h>
#include <time.h>
#include "prototype.h"
#define NS printf_s(" \n \n")
int main()
{
setlocale(LC_ALL,"");
//Задание рассчетной матрицы
double mas_general[4][4]= {1.00, 0.42, 0.54, 0.66,
0.42, 1.00, 0.32, 0.44,
0.54, 0.32, 1.00, 0.22,
0.66, 0.44, 0.22, 1.00};
double null[4][4]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
double **mas=sozdanie(mas_general);
double **obrat1=sozdanie(null);
double **trans1=sozdanie(null);
double **ras1=sozdanie(null);
//Запуск вывода на экран расчетной матрицы
printf_s ("Расчетная матрица\n");
print_mas(mas);
NS;
//Запуск функции создания обратной функции
obrat1=obrat(mas);
//Запуск вывода на экран обратной матрицы
printf_s ("Обратная матрица\n");
print_mas(obrat1);
NS;
//Запуск функции создания транспонированной функции
trans1=trans(mas);
//Запуск вывода на экран транспонированной матрицы
printf_s ("Транспонированная матрица\n");
print_mas(trans1);
NS;
//Запуск функции умножения обратной на транспонированную
ras1=proizv(obrat1,trans1);
//Вывод на экран результата умножения расчетной матрицы на обратную
printf_s ("Проверка подлинности получения обратной и транспонированной матрицы\nРезультат умножения транспонированной матрицы на обратную\n");
print_mas(ras1);
NS;
//Запуск функции сравнения полученной матрицы с единичной
sravnenie(ras1);
//Запуск функции сравнения транспонированной матрицы с обратной
rezultat(obrat1,trans1);
return 0;
}