MatOpenOutFile(keyDemo,numFrag);
fprintf(F,"\nШаг %3i",numStep);
MatWriteMat(n,n,A,"\0");
fclose(F);
break;
case 2: // вывод сообщения о невозможности продолжения
MatOpenOutFile(keyDemo,numFrag);
fprintf(F,"\nЭлемент A[%2i][%2i] = 0.\n",numStep,numStep);
fprintf(F,"Дальнейшее преобразование невозможно.\n");
fclose(F);
break;
case 3: // вывод определителя
MatOpenOutFile(keyDemo,numFrag);
fprintf(F,"\nОпределитель = ");
fprintf(F,Format,det);
fprintf(F,"\n");
fclose(F);
break;
}
}
// ─── Конец функции MatWriteDetMat ──────────────────────────────────
// ─── Начало функции MatWriteMat ────────────────────────────────────
void MatWriteMat(int m, int n, Matrix A, string S)
/*
╔════════════════════════════════════════════════════════════════╗
║ Функция для вывода матрицы на дисплей или в файл ║
╚════════════════════════════════════════════════════════════════╝
╔════════════════════════════════════════════════════════════════════╗
║ Входные переменые: ║
║ m - число строк матрицы; ║
║ n - число столбцов матрицы; ║
║ A - выводимая матрица; ║
║ Необязательная входная переменная: ║
║ S - строка надписи над матрицей. ║
╟────────────────────────────────────────────────────────────────────╢
║ Выходных переменных нет. ║
╟────────────────────────────────────────────────────────────────────╢
║ Примечания: ║
║ 1. Вывод в файл происходит при значении глобальной переменной ║
║ keyDemo=3. При keyDemo = 1 или 2 происходит вывод на дисплей. ║
║ 2. Спецификация вывода управляется константами spec, npos и ndig ║
║ модуля define.h. ║
╚════════════════════════════════════════════════════════════════════╝
╔════════════════════════════════════════════════════════════════════╗
║(C) N.V.Usoltsev Create 10.07.06 Var 01 - 10.07.06 Test 10.07.06 ║
╚════════════════════════════════════════════════════════════════════╝
*/
{
// описание данных
int i,j;
// вывод
fprintf(F,"\n");
fprintf(F,S);
fprintf(F,"\n");
for (i=1; i<=m; i++)
{
for (j=1; j<=n; j++)
fprintf(F,Format,A[i][j]);
fprintf(F,"\n");
}
}
// ─── Конец функции MatWriteMat ────────────────────────────────────
// ════════════════════════════════════════════════════════════════════
// End модуля dMatrix
// ════════════════════════════════════════════════════════════════════
Листинг 4
// Заголовочный файл matrix.h
// Прототипы функций, содержащихся в модуле matrix.cpp
#include "define.h"
int DetMat(int, Matrix, double&, int=0, string="detmat.dat");
Листинг 5
// Заголовочный файл dmatrix.h
// Прототипы функций модуля dMatrix
#include "define.h"
void MatWriteDetMat(int, int, int, int, Matrix, double);
void MatWriteMat(int, int, Matrix, string='\0');
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.