Программа
PROGRAM Matrix;
CONST Quant=5; { Максимальное количество строк и столбцов матрицы }
TYPE Power=1..Quant; { Размерность массивов }
Element=integer; { Тип элементов массивов }
MatrixType=array[Power,Power] of Element; { Массив элементов (матрица)}
PROCEDURE ReadMatrix(var F:text; var A:MatrixType); { Процедура ввода вектора }
Var i:Power; { Счетчик строк }
j:Power; { Счетчик столбцов }
Begin
Reset(F); { Открытие файла для чтения }
for i:=1 to Quant do
begin
for j:=1 to Quant do Read(F,A[i,j]); { Чтение элемента матрицы }
ReadLn(F) { Чтение конца строки файла }
end;
Close(F) { Закрытие файла }
End;
PROCEDURE WriteMatrix(var F:text; Head:string; var A:MatrixType); { Процедура вывода матрицы }
Var i:Power; { Счетчик строк }
j:Power; { Счетчик столбцов }
Begin
Rewrite(F); { Открытие файла для записи }
if Head<>'' then WriteLn(F,Head); { Вывод заголовка }
for i:=1 to Quant do { Цикл вывода строк }
begin
for j:=1 to Quant do { Цикл вывода стрки }
Write(F,A[i,j]:2,' '); { Вывод элемента }
WriteLn(F) { Вывод конца строки }
end;
Close(F) { Закрытие файла }
End;
FUNCTION GetSum(A:MatrixType):Element; { Функция вычисления суммы элементов }
Var i:Power; { Счетчик строк }
j:Power; { Счетчик столбцов }
Sum:Element; { Переменная для набора суммы }
Begin
Sum:=0; { Сброс суммы }
for i:=1 to Quant do { Цикл просмотра строк }
for j:=i to Quant do { Цикл просмотра стрки }
Sum:=Sum+A[i,j]; { Набор суммы }
GetSum:=Sum; { Определение значения функции }
End;
VAR A,B:MatrixType; { Исходная и создаваемая матрицы }
F:text; { Указатель файловой переменной }
BEGIN
WriteLn; { Пропуск строки }
Assign(F,'init.dat'); { Связывание указателя с именем файла }
ReadMatrix(F,A); { Ввод матрицы }
WriteLn('Сумма элементов матрицы, лежащих не ниже главной диагонали ',GetSum(A)); { Вычисление и вывод суммы на экран }
WriteLn; { Пропуск строки }
Assign(F,'res.txt'); { Связывание указателя с именем файла }
Rewrite(F); { Открытие файла для записи }
WriteLn(F,'Сумма элементов матрицы, лежащих не ниже главной диагонали ',GetSum(A));{ Вычисление и вывод суммы в файл }
Close(F); { Закрытие файла }
END.
Бесплатные примеры программ
Примеры написанных программ
Помощь студентам по программированию